TITLE 'Rychla scitacka' DESIGNER 'Dedek, Hrdy, Trs' DATE '7.3.2006' Description Na jednom obvodu GAL realizujte sčítačku s registrem na výstupu, která sečte dvě čísla za dobu rovnou zpoždění obvodu. Jaká maximální šířka sčítačky se dá takto realizovat? End_Desc; PEEL18CV8 CLK pin 1 "I/O CONFIGURATION DECLARATION "IOC (PIN_NO 'PIN_NAME' POLARITY OUTPUT_TYPE FEEDBACK_TYPE ) A0 Pin 2 A1 Pin 3 A2 Pin 4 B0 PIN 5 B1 PIN 6 B2 PIN 7 IOC ( 12 '' Pos Com Feed_Pin ) IOC ( 13 '' Pos Com Feed_Pin ) IOC ( 14 '' Pos Com Feed_Pin ) IOC ( 15 '' Pos Com Feed_Pin ) IOC ( 16 'Q3' Pos Reg Feed_Pin ) IOC ( 17 'Q2' Pos Reg Feed_Pin ) IOC ( 18 'Q1' Pos Reg Feed_Pin ) IOC ( 19 'Q0' Pos Reg Feed_Pin ) AR NODE 21 "Global Asynchronous Reset SP NODE 22 "Global Synchronous Preset DEFINE EQUATIONS AR = 0; SP = 0; "All Equations must end with semicolons. "Internal or External output names appended with extensions: " 1) .COM for Combinatorial Output " 2) .D for D-type Registered Output " 3) .OE for Output Enable Control Q2.D=a1&a0&b0 + a0&b1&b0 + a1&b1; Q1.D=a1&a0&b1&b0 + !a0&a1&!b1 + !a0&!a1&b1 + a0&!a1&b0&!b1 + !a1&!b0&b1 + a1&!b0&!b1 ; Q0.D=a0&!b0+!a0&b0; Q0.OE = 1; Q1.OE = 1; Q2.OE = 1; Q3.OE = 1; TEST_VECTORS ( clk a1 a0 b1 b0 -> q2 q1 q0) 0 0 0 0 0 -> 0 0 0 1 0 0 0 0 -> 0 0 0 0 0 0 0 1 -> 0 0 0 1 0 0 0 1 -> 0 0 1 0 0 0 1 0 -> 0 0 1 1 0 0 1 0 -> 0 1 0 0 0 0 1 1 -> 0 1 0 1 0 0 1 1 -> 0 1 1 0 0 1 0 0 -> 0 1 1 1 0 1 0 0 -> 0 0 1 0 0 1 0 1 -> 0 0 1 1 0 1 0 1 -> 0 1 0 0 0 1 1 0 -> 0 1 0 1 0 1 1 0 -> 0 1 1 0 0 1 1 1 -> 0 1 1 1 0 1 1 1 -> 1 0 0 0 1 0 0 0 -> 1 0 0 1 1 0 0 0 -> 0 1 0 0 1 0 0 1 -> 0 1 0 1 1 0 0 1 -> 0 1 1 0 1 0 1 0 -> 0 1 1 1 1 0 1 0 -> 1 0 0 0 1 0 1 1 -> 1 0 0 1 1 0 1 1 -> 1 0 1 0 1 1 0 0 -> 1 0 1 1 1 1 0 0 -> 0 1 1 0 1 1 0 1 -> 0 1 1 1 1 1 0 1 -> 1 0 0 0 1 1 1 0 -> 1 0 0 1 1 1 1 0 -> 1 0 1 0 1 1 1 1 -> 1 0 1 1 1 1 1 1 -> 1 1 0