Synopsys Synthesizable Intel 8237A DMA Controller

The Intel 8237A is a simple DMA controller. In order to simplify using this controller for educational purposes, many of the advanced features have been removed. A detailed description of what is supported and what is not supported can be found below. The 8237A can be easily incorporated into a design with minimal setup and/or initialization required. The provided design is also synthesizable through Synopsys dc_shell and a testbench is also provided to demostrate the programming and DMA operations.

Supported

Not Supported

Source File Listing

I8237A.vhd
I8237A_TB.vhd
syn.scr
compile.scr

Synthesis Instructions

In order to synthesize the 8237A two script files compile.scr and syn.scr. From within dc_shell enter the following command:

NOTE: You must change all references of "lsi_10k" to the appropriate synthesis library that you are using.

The output of the synthesis will be two files(I8237A_GATE.vhd and I8237A_GATE.db). The VHDL file can be used to simulate the design at gate-level. The db file can be used to perfrom analysis of the design from within dc_shell without re-synthesizing the design.

You will need to comment out the line(line# 15) that defines the type UNSIGNED in I8237A_GATE.vhd in order to analyze the file properly.

Test Bench

A testbench has been provided that tests programming of the 8237A as well as block transfer operation. It also serves as a guide demonstrating how the 8237A can be used.

Problems And Comments

Please direct any problems and comments to dalton@cs.ucr.edu. We will respond to all inquiries as quick as possible.

Return to Dalton home page



Last Updated 7/15/1999