Tuesday, December 10, 2024

Synthesized FPGA logic after cutting back on usage to fit within the device for the Virtual 2315 Cartridge Facility

FIRST TRIES AT GENERATING IMAGE FAILED DUE TO SIZE CONSTRAINTS

The device used in George Wiley's RK-05 Emulator, which is the base of my Virtual 2315 Cartridge Facility after substantial modifications, only had room for a bit more than 1000 LUTs (Look Up Tables, a fundamental unit in FPGAs) but my first attempt came in requiring over 1400.

TRIMMING SUCCESSFULLY WITHOUT COMPROMISING FUNCTIONALITY

George's emulator is quite flexible, supporting a range of DEC CPUs and controller cards that connect to an RK-05 disk drive. As such, it stores many key values in the header of the disk file, such as the length of the preamble of zero bits before the sync word. These are read from the microSD card by the Raspberry Pi Pico and sent over SPI link to the FPGA logic to customize its behavior.

The IBM 2310 disk drive has only one set of values for things such as the bitrate, preamble length, number of sectors, sector duration etc. I hard coded them into the FPGA which allowed me to strip out all the code that read them from SPI and passed them between functional parts of the FPGA design. This pulled the required LUT count below the maximum so that I could use the IceCube2 tool to place and route the design onto the FPGA chip being used. 

No comments:

Post a Comment