Jump to content
  • 0

Digital Discovery - Pattern - ROM Emulation


OE3CPA

Question

Hello to this forum,

my first post. First of all, thank you for the excellent products, I really like the Digital Discovery and the possibilities it provides. I am a fan of it !

Recently I want to use the DD for emulating a ROM (a 2KB ROM, 8bit). By this I identified 4 topics I want to share with you, which are considerable to extend the ROM emulation features:

1) I miss the possibility to set "Z" as output and to have the 3-state supported. By this a CE or CS behavior can be generated. I only could use PP mode.

2) Only the DIO lines can be used, but for truth table inputs also DIN lines should be usable (e.g. as address lines). I know, this is then a difference between DD and AD products. But this would extend the DD use cases and makes it specialized for digital purposes.

3) An import of a ROM image or CSV file would be great analog to custom pattern inputs.

4) This is the most complex topic and has to be discussed:
In my case, the driving bus was a multiplexed A/D bus with ALE. Of course it was easy with "Logic" to decode this with a custom script. But of course, this output cannot be used as input for ROM logic, as this logic is done live in FPGA, whereas the custom script is executed after capturing.
Therefore, custom scripting cannot be used. But a ALE capturing for ROM emulation could be a nice feature - only for further considerations.

If ROM emulation becomes a key feature, of course the size could be a topic (using the onboard DRAM in another way or so ...

Again I like DD as it is, I only want to share some considerations, as it was a topic a week ago on my side.

Greetings (73)
OE3CPA

Link to comment
Share on other sites

3 answers to this question

Recommended Posts

  • 0

Hi @OE3CPA

1. Currently you can use OD output and activate pull-up for DIOs to achieve this. The maximum frequency will be limited by capacitive load on DIOs the 10k pulls need to charge.
TS output for ROM logic was recently added to the library and each device firmware to implement Protocol/SWD. Later I will add support for this also in the Pattern Generator interface, but this will half the available ROM size.

2. The ROM logic basically uses the DIO inputs as address for the DIO LUT/RAM. It is recommended to use the least significant bits as inputs or state for the ROM logic since the address space is limited by the device buffer size. With 32k bit RAM for each DIO the 15 least significant ones can be used as as input or state bit, but devices/configurations with less RAM like 1k are limited to 10 DIOs. Additional multiplexers to make address mapping adjustable would require more FPGA logic resource, which is maxed out on AD1,2,3 and DD. It may also require additional pipelining stage which would increase the latency and reduce the maximum state mode frequency.

3. You can use copy/paste in the Truth table.

4. ALE ?

Thank you for your feedback.

Link to comment
Share on other sites

  • 0

Hello Attila,

thank you very much for such short reaction time ideas to be discussed.

I know, DD was not intended to be a full featured ROM emulator, but having here extensions (may be only DD related) could be interesting, as especially in cases, where "history computer world" meets new time DD is very interesting.

ALE is typically the "Address Latch Enable" line on muxed busses. I may case of last week it was a 8bit A/D bus and 4 additional pins on a port. On falling edge of ALE the in this case 12 bits can be sampled. So in this case only 14 lines are used: 8+4 as address input latched via ALE. (12+ 1 = 13) and a read select line (in this case PSELn for PROM-Select-n (low active) to read data and to drive output of the "virtual" ROM (so from Z to 0/1). So 14 lines.

So, as I said, I like DD as it is. It should only be base for discussions for feature enhancements. May be even a VROM app to the current Pattern, Logic, Supply, Protocol, ... using the DDR as ROM content and already provide typcial ROM logic in FPGA for separate A and D bus or combined ... only ideas ... I do not know, how often this is needed and used.

I also repair time by time old HP measurement boxer or similar, where I have to debug digital defects ... so for this DD is really a cool tool. I like it.

Christoph

Link to comment
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
×
×
  • Create New...