[comp.sys.intel] Need help using UPI-452

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