90 likes | 198 Views
EE365 Adv. Digital Circuit Design Clarkson University. HW#4 Help. Be aware of proper Bit order A A ? Not Necessarily MSB MSB LSB LSB. Rissacher EE365. HW#4 Help. Device. Circuit Description. Rissacher EE365. HW#4 Help. MSB. Rissacher EE365. More VHDL.
E N D
EE365 Adv. Digital Circuit Design Clarkson University
HW#4 Help • Be aware of proper Bit order • A A ? Not Necessarily • MSB MSB • LSB LSB Rissacher EE365
HW#4 Help Device Circuit Description Rissacher EE365
HW#4 Help MSB Rissacher EE365
More VHDL • Projects will get more complex (devices and circuits will be more difficult to define) • In Proj #3, don’t worry about “minimization” of circuit, just make it work with MSI devices… there may be more than one way to create a successful device • However, complexity of your design will be considered in the grade (overly large circuits will lose some points) • May need to learn some more VHDL syntax
VHDL: Concatenation Given several bits (e.g., A0, A1, A2), they can be concatenated using the ‘&’ operator For example: A0 = ‘1’ A1 = ‘0’ A2 = ‘0’ (A0 & A1 & A2) = ‘100’
VHDL: Concatenation Concatenated terms can be used for relational operations For example: F <= ‘1’ after 20ns when (A0 & A1 & A2) = ‘100’ …
VHDL: More Complex Devices • MSI devices are more complex and will be harder to define. • The may have several inputs and several outputs • For each output, use a separate concurrent statement • For example: • F <= ‘1’ after 20ns when (A0 & A1 & A2) = ‘100’ else ‘0’ after 20 ns; • G <= ‘1’ after 40ns when (A0 & A1 & A2) > ‘000’ else ‘0’ after 40 ns;
VHDL: More Complex Devices • May need very long statements to define all of the possibilities that drive a certain output • For example: • F <= ‘1’ after 20 ns when (A=‘1’) or (B=‘1’) or (C=‘1’) or ((D=‘1’)and(EN_L=‘0’)) or (BYP_L = ‘0’) else ‘0’ after 60 ns; • (And they can get much worse)