Chapter 10 - VHDL Introduction-2x2(1)

# 5 p 298 figure 9 17 an 8 word x 4 bit rom 1 library

This preview shows page 1. Sign up to view the full content.

This is the end of the preview. Sign up to access the rest of the document.

Unformatted text preview: 0101010101010101”; constant ONE_WORD: SHORT_WORD := (others =&gt; ‘1’); Section 10.5 (p. 298) Figure 9-17: An 8-Word x 4-Bit ROM 1 library BITLIB; 2 use BITLIB.bit_pack.all; 3 entity ROM9_17 is 4 port (A, B, C: in bit; F: out bit_vector(0 to 3)); 5 end entity; 6 architecture ROM of ROM9_17 is 7 type ROM8X4 is array (0 to 7) of bit_vector(0 to 3); 8 constant ROM1: ROM8X4 := (&quot;1010&quot;, &quot;1010&quot;, &quot;0111&quot;,&quot;0101&quot;, &quot;1100&quot;, &quot;0001&quot;, &quot;1111&quot;, &quot;0101&quot;); 9 signal index: Integer range 0 to 7; 10 begin 11 Index &lt;= vec2int(A&amp;B&amp;C); -- A&amp;B&amp;C Is a 3-bit vector 12 -- vec2int is a function that converts this vector to an integer 13 F &lt;= ROM1 (index); 14 -- this statement reads the output from the ROM 15 end ROM; VHDL Operators When parentheses are not used, operators in class 7 have the highest precedence and are applied first, followed by class 6, then class 5, etc. Section 10.6 (p. 301) Figure 10-13: VHDL Description of a ROM VHDL shift Operators The shift operators are used to shift or rotate a bit_vector. In the following examples, A is an 8- bit vector equal to “10010101”: Figure 10-14: Comparator for Integers Section 10.6 (p. 302) Packages and Libraries Packages and libraries provide a convenient way of referencing frequently used functions and components. A package consists of a p...
View Full Document

Ask a homework question - tutors are online