Email: Password: Remember Me | Create Account (Free)

Back to Subject List

Old thread has been locked -- no new posts accepted in this thread
???
07/09/07 14:23
Modified:
  07/09/07 14:44

Read: times


 
#141627 - It\'s because I know \"nothing\" about the controller
Responding to: ???'s previous message
Jan Waclawek said:
Richard Erlacher said:
The MFM data was stored at 5 Mbits/sec, so there are 83333 bit windows per rotation, nominally, and, if one samples at 8x that rate, or 40 MHz,[...]

OK, that's 5MByte / s for me, if you deserialize the data. It's a digital stream coming out of the drive, I hope, not the raw analog output of the head amplifier... ?

Yes, it's captured via an RS422 a receiver from the data cable.

It also means 83kByte of data per track, isn't it.

Yes, though I have to allow for speed tolerance (+/- ~1%) because there's a physical drive involved. However, the external "ROM" is also copied into one of the four SRAMs, in order to allow full-speed execution of the code, for which the BBRAM is too slow, and once the additional memory is provided, one might as well fill the memory map. There's some chance this hardware may be of use again in the future. I'm also allowing for overlapping two track buffers, and for doubling the sample rate, just in case that turns out to be helpful.

Richard said:
[...] digitally synchronized with the data from the controller,[...]

Do you really need that sort of synchronisation? I thought the point of using oversampling is to be able to "digitally lock" to the captured data afterwards...

It saves a number of steps to do it this way, and makes the use of a table realistic, as opposed to sequential processing of the entire sample as a random bit stream.

I mean, you could greatly simplify the capturing hardware if you simply capture at a fixed rate.

I do capture at a fixed rate, but I adjust the phase whenever there's an invlaid pattern of bits, indicating a slip of the bit-frame relationship due to slightly differing crystal oscillator rates.

Richard said:
No, the data doesn't have to be processed on-the-fly, but it does have to be captured in real time, and transmitted to the PC while the next track is being "formatted" and at a rate sufficient to ensure that the controller doesn't overwrite its previous track.

I still have problem to understand why do you want to transmit the data at full speed. I thought, you could capture a single track, stop the capturing, transfer it to PC at whatever rate available, and only when the track has been transferred, tell the drive to move on to the following head/track. At least this is what I would try to do.

The tracks are going to be formatted at the physical drive's rate rather than an arbitrary one. Since I know very little about the specifics of the DEC controller firmware, I can't anticipate how the controller will respond to too-long a response time from the drive, hence I have to use a drive that works. Therefore, I have to meet the real-world timing that the formatting procedure imposes.

Is it too complicated to move between heads/tracks? Do you need the controller to be involved in this? How much control do you have over this?

Why would I do that? I'm trying to determine details of the DEC controller's undocumented behavior. DEC imposed certain restrictions on the drives that they used. What these were was not published. It's anybody's guess how much speed tolerance the controller firmware will tolerate, and it's anybody's guess how much delay in the "Seek Complete" signal pr "Drive Selected" signal they tolerate. There's also no indication of how long they'll tolerate between a head select tag and the appearance of data on the data cable. I want to start with real-world figures for these values before proceeding with the rest of the job.

Keep in mind that the DEC firmware provides a routine to format a drive, but provides no routine to format a single track. Aside from invoking that routine from the VMS command line, I have no option at all.

Jan


Does that answer your questions?

RE



List of 23 messages in thread
TopicAuthorDate
What sorts of memory \"expansion\" have you tried?            01/01/70 00:00      
   why the adder?            01/01/70 00:00      
      it's a preliminary notion            01/01/70 00:00      
         I am talking about the textbook example...            01/01/70 00:00      
            there is a simple reason ...            01/01/70 00:00      
               whatizit?            01/01/70 00:00      
                  I\'m trying something odd ... and retro ...            01/01/70 00:00      
                     reading            01/01/70 00:00      
                        it's part of a larger process            01/01/70 00:00      
                           why that fast?            01/01/70 00:00      
                              It\'s because I know \"nothing\" about the controller            01/01/70 00:00      
                                 I still have questions.... :-)            01/01/70 00:00      
                                    We're not quite on the same page, Jan            01/01/70 00:00      
                                       formatting            01/01/70 00:00      
                                          must be a bug in the display code ...            01/01/70 00:00      
                                             please switch to the phpBB mode (temporarily)...            01/01/70 00:00      
                                                I can see something's odd, but I don't know what            01/01/70 00:00      
                                       conclusions and maybe a few more ideas            01/01/70 00:00      
                                          coping with the wierdness is my job            01/01/70 00:00      
                                             just a thought            01/01/70 00:00      
                                                Yes            01/01/70 00:00      
   increment the page register            01/01/70 00:00      
      I though of that ...            01/01/70 00:00      

Back to Subject List