Timothy Normand Miller wrote:
> I don't actually know what they mean by "buffer" and "driver". I
> usually think of a buffer as being a register, and a driver as
> something that drives an output pin.
In this sense, a buffer is something that separates input from output.
Same functionality as a register but not clocked. An AND gate with its
two inputs connected would be a buffer. So would two inverters in
series. 7406s are general called hex inverting buffers or
buffer/drivers. The driver part comes from the transistors on the
output being able to source or sink much higher current. This can be
either for a large fan out, or for driving non digital logic such as an
LED. The driver on an FPGA pin is analogous.
Timothy Normand Miller wrote:
> // Quad 2-input AND gate
> module IC7408(
> a0, b0, a1, b1, a2, b2, a3, b3,
> c0, c1, c2, c3);
> input a0, b0, a1, b1, a2, b2, a3, b3;
> output c0, c1, c2, c3;
> // Since these are single bits, the && operator would work, but we're
> using & for
> // the semantic consistency with what we're doing. I.e. this is bit-wise.
> assign c0 = a0 & b0;
> assign c1 = a1 & b1;
> assign c2 = a2 & b2;
> assign c3 = a3 & b3;
> endmodule
>
>
>
On a technicality, I might do this as follows:
module GATE2INAND(a,b,x);
input a, b;
output x;
assign x=a&b;
endmodule
module IC7408(a0, b0, a1, b1, a2, b2, a3, b3, x1, x2, x3);
input a0, b0, a1, b1, a2, b2, a3, b3;
output x1, x2, x3;
GATE2INAND AND0( .a(a0), .b(b0), .x(x0));
GATE2INAND AND1( .a(a1), .b(b1), .x(x1));
GATE2INAND AND2( .a(a2), .b(b2), .x(x2));
GATE2INAND AND3( .a(a3), .b(b3), .x(x3));
endmodule
My reason for doing this is that if we put together a library of gates
and chips like this, the you could take a gschem netlist and generate
Verilog RTL for the circuit (assuming it's all digital of course). Also
for someone just learning Verilog and potentially digital logic,
building simple blocks first, then layering it all together may make
more sense. In the end the result (and I would hope synthesis) would be
the same. Obviously, not all the 74xx chips make sense to be broken
down this way, but many do. In fact you can even find the logic
diagrams for many on their data sheets.
Patrick M
_______________________________________________
Open-graphics mailing list
[email protected]
http://lists.duskglow.com/mailman/listinfo/open-graphics
List service provided by Duskglow Consulting, LLC (www.duskglow.com)