Using a 74ALS646 as a read/write register

Mar 03, 2009 3 Replies

I have a uP based system I am working on. I need to implement registers external to the uP to control various devices and set modes.



Normally I do this with an octal latch (like 74573) and a bus transceiver.



74573 input and 74245 output are connected together and to the system bus
74573 output and 74245 input are connected together and to the device to be controlled. address decode logic will drive 74573 clk/le and 74245 oe\\

Thats how I normally do read/write registers on the board.



But heres my delima Ive got a stock of 74ALS646 and their datasheet. They are 8 bit bus transcievers with dflops on both buses (A and B).



For the life of me I cant configure them to function as 8 bit read/write registers. It would be great since I have a lot of these and they will replace two chips from above configuration



anyone here have an experience with these chips (74ALS646)?



But 'ya know, I wonder if there's anything else in the LS600s that would work... Turns out there are independent output controls, available on the 'LS651-653 series. Looks like you can get the I/O bus on A and output on B by wiring (on the '651) GAB and SAB high, SBA low, and use CAB as write (can be connected to the bus /WR line if data is valid on the rising edge) and /GBA as read (typical bus /RD line).

I'll have to get some of these...

Tim

-- Deep Friar: a very philosophical monk. Website:

formatting link

"delima"? That was Wilma's name on the French version of the Flintstones.

Tim, my sentiments exactly. I was happy when I started reading the datasheet until I realized that only one bus can be driven at a time. Since I need Bus B to remain fixed (other devices/logic depend on it), theres no way to really use ONE 74x646 as a read/write register.

But I can use two (and I have a stock of almost 140 of them).

for register mode: drive clkAB and set sAB high (dir high for AtoB) for transceiver mode: set sAB low (transparent mode) with dir high

Thus I am able to replace the 74573+74245 with two 74als646

Engineering is about using what you have in stock right? :)

Thanks

Join the Discussion

Have something to add? Share your thoughts — no account required.

Didn't find your answer?

Ask the community — no account required