Sunday, August 23, 2015

Completed medium speed link logic for SAC box, implementing paper tape over the link, and thinking about 1442 reader/punch repair

Finally done with the conference I was attending and back to the workshop. I worked on using the slave Arduino to control the paper tape reader and punch peripherals.

1442 CARD READER/PUNCH RESTORATION

I spoke with a friend who might be able to machine a replacement wheel, but the issue of what type of gripping surface to apply as a 'tire' around the circumference remains unsolved. The metal wheel itself is intact, the issue is with the broken tire.

In addition, began thinking of how I might rebuild the missing portion of the 'tire' with a ceramic or epoxy based layer, topped with appropriate grit. The key will be ensuring the diameter of the finished wheel is as close to the unbroken sister wheel as possible.

SAC INTERFACE FOR ADDING PERIPHERALS TO THE 1130

All the logic to allow testing of the medium speed SPI link between a slave microcontroller and the SAC Interface box master FPGA is complete - as an Arduino instantiation. Other slave devices are possible, such as mbed controllers, Raspberry Pi, Edison, etc.

My logic to drive the paper tape reader and punch (virtually these are an IBM 1134 reader and an IBM 1055 punch) was adjusted, removing the timers and logic to directly drive the clutch of the devices. Instead, it now follows an interlocked cycle over the SPI link, where a device gets a request, it eventually posts a response, then the fpga drops the request and finally the Arduino drops the response.

The Arduino is responsible for timing the clutch activation, for suppressing delivery of a data byte on the first request after the reader goes ready, and for maintaining the state of the response and not ready signals.

The fpga will maintain the state of the busy signal, return a DSW when requested by a Sense Device, return the character value when processing an XIO Read command, and will maintain and restore the response state for both devices as far as triggering interrupts.

My initial implementation may miss subtleties, such as the behavior if a request is sent to a device which is not ready, but I will research what should happen with real peripherals and then model it as I go through testing.

No comments:

Post a Comment