Tom Kelliher, CS 240
Feb. 13, 2008
Read 3.3.
IC technology.
Design example.
Memory or registers.
Once logic is collected into a block, it can be instantiated several times in several places.
Adders are used at several points within a CPU: integer ALU, program counter incrementer, multiplier, etc.
Full binary adders are connected to form adders.
Consider the two-dimensional tiling of memory cells.
Design styles:
Design tools:
The ``old'' days: drafting tables, taping out a circuit, and lots of prototyping.
library ieee; use ieee.std_logic_1164.all; entity mux4_1 is port (a0: in bit; a1: in bit; d0: in bit; d1: in bit; d2: in bit; d3: in bit; z: out bit); end mux4_1; architecture behavioral of mux4_1 is signal address: bit_vector(1 downto 0); begin address <= a1 & a0; with address select z <= d0 when "00", d1 when "01", d2 when "10", d3 when "11"; end behavioral;
Combinational circuit analysis -- ``reverse engineering.'' Skip.
Logic Simulation:
Can't re-wire a die.
Entire computers have been simulated to the point of booting the OS.
Results are only as good as the tests run.
Large circuits cannot be simulated completely. Just ask Intel
(fdiv
).
Good test vectors are the key to meaningful results.