Image Map Image Map
Page 1 of 3 123 LastLast
Results 1 to 10 of 21

Thread: 74LS244 Question

  1. #1
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,087
    Blog Entries
    2

    Default 74LS244 Question

    Just want to make sure I understand how this works before I go changing things.

    I am investigating a 74LS244. If I understand correctly, these are tri-state buffers, and are sometimes used to amplify a signal if the signal isn't strong enough from its source to reach its destination. Have I got that right?

    Okay, so here's the situation. I don't know what the correct terminology is, but I have a signal 'line' marked on the schematic as CB3. According to what I've read, CB3 should be high by default. It is low instead. So I've traced the schematic back and back to where CB3 originates, which is off pin 12 of a 74LS244. I have nothing at pin 12. At pin 8, I have some kind of traffic. Pin 1 is high.

    According to the function table, if pin 1 (G) is high, it would put the output (pin 12) at high impedance, which means it's not actually driving any signal at all. Since that's what I'm seeing, that would indicate the 74LS244 is working, right? Unless pin 1 is stuck high for reasons internal or external?

  2. #2
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,266
    Blog Entries
    20

    Default

    You've got the right idea, but not exactly.

    The tristate buffer family of ICs (and there are several of them) are usually used to provide higher drive current (24 ma sink/15 ma source) than the run-of-the-mill ICs. One important application is driving the address lines of a DRAM array, a load that is highly capacitive in nature. So you need a lot of drive current deal with this if you want reasonable switching times. You can also use the 244 as a bus driver, which is a similar application in that it involves heavy capacitive and/or inductive loads. AMD and others make a variant of the 244 specifically intended to drive DRAM address lines with no series resistors required.

    You don't know if the 244 is working yet, because you haven't seen what happens when pin 1 goes low. But so far, yes, the 244 is floating the '1' side output lines.

  3. #3
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,087
    Blog Entries
    2

    Default

    Thanks Chuck.

    I'm doing a lot more reading on this stuff and looking up each chip involved to (attempt to) understand how they work and what they're supposed to be doing. There is a 74LS32 that acts on pin 1 of U47, so it could be being driven high there.

    In its present state, and being that it's a buffer, could I 'bypass' it by jumping pin 8 to pin 12? I'm assuming it's not modifying whatever is coming in on pin 8... it's just looking to pin 1 for the okay to pass it through from 8 to 12?
    l

  4. #4
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,266
    Blog Entries
    20

    Default

    Assuming that pin 1 stays high, it should be possible to "feed through" pin 8 to pin 12. But the solution ultimately will be figuring out why pin 1 stays high.

  5. #5
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,087
    Blog Entries
    2

    Default

    Quote Originally Posted by Chuck(G) View Post
    Assuming that pin 1 stays high, it should be possible to "feed through" pin 8 to pin 12. But the solution ultimately will be figuring out why pin 1 stays high.
    Yeah that is is the goal for sure. I just want to prove out my theory a bit. After the experience with the TVT I don't trust schematics or circuit descriptions 100%. I want to see what happens with CB3 high to see if there's a behavior change and to confirm the circuit description is correct. I did try feeding through but didn't see any text appear... although I didnt type anything after feeding through so maybe it would only change new text being added. I'm going to investigate the 7432 attached to that pin and see if the signals are lining up as they should be or if something there or further up the chain is stuck high.
    Last edited by falter; December 5th, 2018 at 12:36 PM.

  6. Default

    I'm not sure what you mean CB3 should be high by default. With TTL logic, it can be in one of three states, high, low, or floating. Floating means that the signal does not have a source driving it. A floating TTL signal will typically read somewhere between high and low, maybe 2 or 3 volts, but a lot depends on what else is connected to that signal.

    If the 74LS244 is in a socket, you can pull the chip and carefully bend the output pin so it doesn't seat in the socket and check the output. If the output is disabled, it will be floating somewhere between high and low states. Otherwise is should reflect what's on the input. Then, with the 244 disconnected, check the signal at another place and see what it looks like. You need to review the schematics and see if there is another chip that also may be driving that signal, when the 244 is disabled and check those chip(s), as well. It's possible that another chip has had a fault and is affecting that signal or there is a short on the PCB and that is interfering with the 244 output and there is nothing wrong with the 244. Another possibility is that the signal that is enabling the 244 isn't behaving correctly. Note that it's not that common for a 74LS244 to fail, though it's possible.

    regards,
    Mike Willegal

    Quote Originally Posted by falter View Post
    Just want to make sure I understand how this works before I go changing things.

    I am investigating a 74LS244. If I understand correctly, these are tri-state buffers, and are sometimes used to amplify a signal if the signal isn't strong enough from its source to reach its destination. Have I got that right?

    Okay, so here's the situation. I don't know what the correct terminology is, but I have a signal 'line' marked on the schematic as CB3. According to what I've read, CB3 should be high by default. It is low instead. So I've traced the schematic back and back to where CB3 originates, which is off pin 12 of a 74LS244. I have nothing at pin 12. At pin 8, I have some kind of traffic. Pin 1 is high.

    According to the function table, if pin 1 (G) is high, it would put the output (pin 12) at high impedance, which means it's not actually driving any signal at all. Since that's what I'm seeing, that would indicate the 74LS244 is working, right? Unless pin 1 is stuck high for reasons internal or external?

  7. #7
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,087
    Blog Entries
    2

    Default

    I don't know the terminology too well. On snuci's site he has scans of the Hyperion Service Manual (I'm trying to fix a Hyperion that will display graphics but not text). The second volume of that contains a description of how the circuit works and explains that if 'CB3' (would you call it a data line? No idea... all the routes between ICs have labels, CB3 is one of them) is high, the incoming data for alphanumeric characters is passed unmodified and out to video. However, if the CB3 line is low, the attributes IC kicks in and modifies that data to account for sub or superscript, or hold, underline, etc.

    I have observed that CB3 stays low. So if I'm understanding right, the display board circuitry thinks the characters need to be modified somehow. But since we aren't trying to do that and none of the attributes are actually set (like underline), instead we get blanks where characters should be.

    I kind of think the attributes controller is suspect... I had a solid high signal on the video pin.. I disconnected it... then reconnected after and suddenly I had data moving through there. Got a cursor back where previously had nothing at all. But no text yet. Cursor moves as you type though.

    So to test this out I'm trying to force CB3 high and see if I get anything additional on screen.

  8. #8
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,087
    Blog Entries
    2

    Default

    And no, the ICs aren't socketed... only two out of about 70 are. And taking the display board out to repair it is not easy either. So I have to really try hard to diagnose what's going on because just replacing chips one at a time involves 30-40 minutes of disassembly/desolder/resolder each time.

  9. #9
    Join Date
    Jan 2007
    Location
    Pacific Northwest, USA
    Posts
    30,266
    Blog Entries
    20

    Default

    Got a pointer to the service manual? I'd be willing to help out on this one.

  10. #10
    Join Date
    Jan 2011
    Location
    Vancouver, BC
    Posts
    4,087
    Blog Entries
    2

    Default

    Thanks Chuck. Here's the manual. http://vintagecomputer.ca/files/Dyna...l-Volume-2.pdf

    The page I am reading from is 5-23. It says "Character code bits, LCC0-7 are presented at the inputs of character generator U3. At the same time the attributes code bits LAT0-7 are at the inputs to PAL U6. If CB3 is high, the bits will pass unmodified to become FAT0-7, if CB3 is low, the bits will be modified. COL/MONO drives pin 11 and prevents the underline attribute from being decoded when the memory is mapped as a Monochrome adapter. When CB3 is low, FAT3 and 4 and CB3 are used by PAL U25 to activate the CHARBL attribute input to the 8021 attribute controller U21. The three bits, FATO, 1, 2 go directly to inputs UND (underline), REV (reverse video), BLINK (character blink). FAT3, 4 go to Ul to produce superscript and supscript attributes. FAT5 goes to U37 to produce the intensify attribute. FAT6, 7 go to UlO to produce the first and second halves of the double width character attribute. FAT6 is also routed to U23 to allow a double width cursor."

    I may be reading it wrong. The way I'm interpreting it is if CB3 is low, it doesn't modify the bits for subscript, underline, etc.. it just passes them through unchanged. If CB3 is high, then if it were underline as an example, it would do something with FAT0 to trigger the appropriate pin on U21. If I'm correct, CB3 being low and nothing being changed (ie. underline) means we get blanks on where characters should be.

    However, on page 5-27, it says "Control Bit 3 - CB3 selects between either IBM attributes (CB3=0) or Hyperion (CB3=1)". I'm not sure how that ties into the above.

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •