neil@ac.dal.ca (11/27/90)
I am using a UPI-452 in a project and am having trouble with the host communications. The device seems to lose the correct status information occationally. The bus access cycle time is not being comprimised, ie: 12 MHz crystal on the '452 gives a min bus cycle time of 500 ns, the host is an 8MHz V40 with 3 wait-states on the I/O channel (875 ns min I/O cycle time). When I load the output FIFO with a DSC followed by a data byte, I am able to read the device reliably when single stepping the host software. When I run the host full speed, the HSTAT register is read incorrectly. It tends to remain 0xF8. If I "manually" read the FIFO (either DSC or data), I get the correct values! (According to the manuals, if the status says there is no bytes in the FIFO, the values read should be 0xFF not the correct data!!!) I have both the IFRS and OFRS bit set to interrupt on "not empty" or "not full" instead of the default full and empty. This only seems to happen when I have a DSC followed by a FIFO data value, if I load the FIFO with data only, all seems to work correctly. I am confused. Anybody out there a wizard with the '452? If so could you help me with some code fragments (with comments) of both the host and '452 communications protocols. Intel Canada's comments were "Boy, that is not a very popular part!" Admittedly, he was a sales engineer not an app eng. Neil Hamilton Oceanography Dept, Dalhousie University, Halifax, NS B3H 4J1 (902)494-3638 neil@ocean.papa.dal.ca