aman said:
Can any of you guys please comment on the following definitions which I
think are right.
Latch is something once enabled holds the value for infinite time as
long has it has Vcc and ground connections.
Buffer is something which holds the value for finite time during which
you need to read it. It can essentially be a part of sample and hold
circuit.
Please correct me if I am wrong.
i'll give it a shot.
Latch
something that holds data that was latched in
at some time interval from a source that may or has
already changed its value of the source since the
latch state took place.
in other words, once a value is latched from a
source, it does not care what the value of the source
changes to, the latched value will be what you see until
you relatch again.
---
Buffer.
I can think of 2 cases here.
one, a unity gain amplifier to represent a source value
with out effecting the characteristics of the source.
what this means is like Load impedance or capacitance effects
that could change the behavior of the source.
--
now in the digital sense.
A buffer is like a cache, info is backed up in memory/registers to be
read later. this way, you don't lose any data while what ever is used to
read it at the most convenient time is performed.
normally in these types of buffers, when data is read out of them
they usually do so in either FIFO(First in First out) or LIFO (Last in
First out);
normally the FIFO is use in most apps., but you do have the LIFO in
cases of Stack related type functions.
in this type of system, a Latch is not needed because the buffer is
capturing all data for you to read when able.
of course, there are limits to buffers! a good design should not
allow this to exceed the limit.
Latches can hold data when the latch state is done but, data will be
ignored until you relatch again.
hope that helped.