Shift Reg Without latch reg - Page 1
Forum section: electronics / beginners

author: BurnedResistor
author_rank: Regular Contributor
timestamp: September 16, 2017, 11:47:42 am
content: Hey All,There are two possibilities here:The HC595 does what I need it to do, and I am an idiot.I need an 8 bit serial in parrallel out shift register without an output latch register.What I need:An 8 bit shift register which outputs the first value the moment the clock is pulsed:However, the HC595 has a latch register, so when the clock for both the shift- and latch- are tied together, the signal takes 1 clock cycle to shift into the register, and another one to be latched out:Is there a way to achieve this using the good ol' HC595 or do I need a different one? I tried doing a quick google search, but came up empty.Thank you for your help!

author: danadak
author_rank: Super Contributor
timestamp: September 16, 2017, 12:47:37 pm
content: CD4094 ?https://www.onsemi.com/pub/Collateral/MC14094B-D.PDFhttp://www.redrok.com/CMOS_CD4094BC_8-BitShiftRegister-Latchwith3-StateOutputs_Fairchild.pdfRegards, Dana.

author: Benta
author_rank: Super Contributor
timestamp: September 16, 2017, 12:51:00 pm
content: +1 to 4094 or 74HC4094.The output latches are level-triggered and can be set to be transparent. The 74HC595 has edge-triggered latches, so the outputs will always be one cycle later.

author: T3sl4co1l
author_rank: Super Contributor
timestamp: September 16, 2017, 01:00:33 pm
content: If you don't need parallel registering at all, use the original '164.Tim

author: sleemanj
author_rank: Super Contributor
timestamp: September 16, 2017, 02:10:25 pm
content: How about an RC on the latch to introduce a delay on the latch when driven by clk. Similar to Roman Black's Shift-1 in a wayhttps://www.romanblack.com/shift1.htm

author: BurnedResistor
author_rank: Regular Contributor
timestamp: September 16, 2017, 02:27:09 pm
content: Quote from: sleemanj on September 16, 2017, 02:10:25 pmA nice idea! However, my sytem will be running at very different speeds (a few hz to a few khz) so I prefer the dedicated chip. I would be woried that that only plays nicely depending on the frequency of the system, frequency of shifts etc.Quote from: T3sl4co1l on September 16, 2017, 01:00:33 pmQuote from: Benta on September 16, 2017, 12:51:00 pmQuote from: danadak on September 16, 2017, 12:47:37 pmPERFECT! Thank you allFor future reference, how did you go about finding the chip? Any special tricks? Or did you simply know it already?Thanks again!

author: BurnedResistor
author_rank: Regular Contributor
timestamp: September 16, 2017, 02:31:29 pm
content: Quote from: danadak on September 16, 2017, 12:47:37 pmAm I interpreting the data sheet correctly? To get the output directly I tie STR (Strobe) High?

author: newbrain
author_rank: Super Contributor
timestamp: September 16, 2017, 02:56:03 pm
content: You've already got good advice, but I'll chip in anyway...If you have a spare inverter, you can drive the latch clock with an inverted serial clock, as also shown in thedatasheeton page 8.The output will have a fixed half clock delay wrt the input.

author: Benta
author_rank: Super Contributor
timestamp: September 16, 2017, 03:05:31 pm
content: Quote from: BurnedResistor on September 16, 2017, 02:31:29 pmYep. It's that simple.

author: Zero999
author_rank: Super Contributor
timestamp: September 16, 2017, 05:45:59 pm
content: Can we please see the bigger picture. What are you trying to do? Have you run out of pins on your microcontroller? If so, it's often cheaper to just get the next size up, than adding extra components.This might not be relevant here, but a handy thing with 74HCT logic is, its inputs are compatible with 3V logic, yet it outputs 5V logic, so it can be used to level shift up to 5V parts.https://assets.nexperia.com/documents/data-sheet/74HC_HCT4094.pdf

author: BurnedResistor
author_rank: Regular Contributor
timestamp: September 16, 2017, 06:29:07 pm
content: Quote from: Hero999 on September 16, 2017, 05:45:59 pmThe bigger picture is a 74 Series Logic ProcessorSo don't worry I am-not run out of IO on my processor.The reason the input needs to be shifted out on the next clock cycle is that the shift register is used as somewhat of a Johnson counter: When a certain feature is used, it activates one pin after the other by shifting a single bit towards the right. The shift register is triggered by some asynchronous feature setting a flip flop and the first cycle of the shift register needs to reset it so that really only a single bit is shifted through. I thought the HC595 did this but because it takes two cycles for the bit to appear on the first pin the shift register ends up shifting two 1's-Hence I need a register without latch.I did not use the johnson counter as it would cycle through-I need it to only shift the bit through when a certain line (in this case the flipflop) goes high.Usually it could be an issue that the signal which sets the flipflop is still on when the shift register starts shifting, meaning the flipflop would not be reset. However this is overcome due to the general architecture of the system: The line that set's the flipflop is the reset line of the processor, so as long as it is high the clock is disabled and therefor the register won't shift.Does that make sense? Thank you for your concern!

author: danadak
author_rank: Super Contributor
timestamp: September 16, 2017, 11:23:59 pm
content: QuoteJust did a search "8 bit shift register fall thru latch"Regards, Dana.

author: Benta
author_rank: Super Contributor
timestamp: September 17, 2017, 10:12:01 am
content: QuoteIn my case, I always go to one of the big suppliers of standard logic (NXP, ON, ST, TI) call up the product list for std. logic and select the appropriate area. Then you get a nice list of parts. This approach also helps you get ideas by stumbling over a function you perhaps didn't think of.