home *** CD-ROM | disk | FTP | other *** search
- Newsgroups: comp.sys.ibm.pc.hardware
- Path: sparky!uunet!usc!sdd.hp.com!ux1.cso.uiuc.edu!news.cso.uiuc.edu!ph-meter.beckman.uiuc.edu!scott
- From: scott@ph-meter.beckman.uiuc.edu (Scott Ellis)
- Subject: prototype board and enabling 16 bit data access
- Message-ID: <scott.712347808@ph-meter.beckman.uiuc.edu>
- Summary: help
- Sender: usenet@news.cso.uiuc.edu (Net Noise owner)
- Organization: University of Illinois at Urbana
- Date: Tue, 28 Jul 1992 18:23:28 GMT
- Keywords: 16 bit data enabling on a custom built board
- Lines: 68
-
-
- I don't think this made it through the 1st time....
- -----
-
- Hi,
-
- I have desgined and constructed a prototype board for a 386 ibm compatible
- machine. I am having difficulty with enabling the 16 bit data transfer.
- The book I am using for my design indiactes that the only thing needed to
- do to enable the 16 bit data mode is to set bus line D2 low (I/O CS16 ACTIVE
- LOW) and voila it should work. Of course this not the case. If there is
- anyone out there in netland who can find an error in my design or who has
- been sucessful in building a card of their own I would appreciate your
- help. (I'm desparate :) )
-
-
- DETAILS OF DESIGN (if you havn't hit n by now )
-
- I have tried 2 implementations of setting D2 low for 16 bit data transfers:
-
- The address decoding consists of 74LS27 (3 input NOR gates) feeding a
- 74LS30 (8 input NAND gate). The NAND gate going low indicates the card in
- being addressed.
-
- 1st method) The first method I tried was to feed the card enable signal
- through a 74LS373 i/o buffer and enable the buffer when the card in
- enabled.
-
- 2nd) This method was to invert the card enable signal and connect it to a
- 74LS06 open-collector inverted.. as shown in a previous thesis...
-
- In both cases, the scope shows that the D2 line goes low during the card
- enable.
-
- SOFTWARE DEBUGGING:
-
- The problem I have encountered leads me to believe that this is an
- implementation error rather than a wiring error. The software routing I
- wrote to test the card works correctly for 2 other functions that do not
- need the 16 bit data transfer. I am using Microsoft C 6.0. When I execute
- a inpw I get 1111 1111 HHHH HHHH where H represents the data being placed
- on the high address line (SD8-SD15) i.e. it is reading the data correctly
- but placing it where the low byte should be. When I use inp (to read 8
- bits) it reads the high byte as well (HHHH HHHH).
-
- Now, just to make things interesting. I disconnected any line from the D2
- connection (i.e. card should operate in 8-bit mode) and it worked
- correctly. inp() returns LLLL LLLL, the low-byte of data.
-
- can anyone out there help me???? or at least point me a good source to
- figure this out.
-
- btw, please send email as I don't have a lot of time to be reading news
- these days.
-
- Scott
-
- dse@uiuc.edu
- scott@uieea.ece.uiuc.edu
- scott@director.beckman.uiuc.edu
- ---------------------------------------------------------------------------
- Graduate Assistant | Graduate Research Assistant
- Beckman Institute | Bioacoustics Research Laboratory
- Systems Services | Dept of Electrical & Computer Eng.
- 1714 Beckman Institute | University of Illinois at Urbana-Champaign
- 1-217-244-3062 | 1-217-244-6843/ FAX 1-217-244-0105
- ---------------------------------------------------------------------------
-
-