Sunday, April 5, 2015

SAC Interface cycle stealing access to 1130 memory is functional

SAC INTERFACE FOR ADDING PERIPHERALS TO THE 1130

I had set up two buttons to trigger cycle steals - a fetch and a store - to specific addresses. I expected to see displayed on the PC whatever word I placed in location 0x0020 after the fetch and to write the value 0x1130 in location 0x0030 for the store operation. After they are working, it would be a good test to try to write to location 0xffff and see what location is actually updated - this would test the validity of all the channel address in bits.

My first test was not perfect but very satisfying. The fetch did pick up data, although the value wasn't what I expected. It was consistent from run to run. The store appeared to work also. First step is to scrutinize the logic in the fpga, then to do some diagnostic variations.

After some additional instrumentation, it is clear that my FSM for cycle stealing store is apparently correct but until I can figure out what address it is storing into I can't check it. I will try the fetch version and see what I discover.

One of the address bits, bit 4, is stuck on - but once I knew to look in location 0x0820 I found my pattern of 0x1130 nice as could be. Store via cycle steal working and definitely triggering memory cycles. I still need to resolve the bad bits on Channel Data In and Channel Address In.

Cycle steal fetch was dredging up a constant value of 0x1320 at all times, more work will be needed to figure this out. It may be a result of when I am latching the value of the B register or it could be a problem on the 1131 side. Testing continues.

I seem to be emitting the pattern on Channel Data In during fetch, not just during the store cycle, but I just don't see the path to make that happen. It is going to take more diagnostic data sent over the PC link to get to the bottom of this.

My suspicion centers on my fpga logic since that is the newest logic, everything on the 1131 seemingly has been working fine all this time. I will tighten up the logic and add more diagnostic information until I know a definitive cause. 

No comments:

Post a Comment