Current (as of 2015) code to configure and control the AD9910 DDS with Altera's Cyclone II FPGA.
This code sends commands to the DDS on the slave boards to the pulser, which drives various lasers and devices around the lab. In short, it takes and stores pulse sequences from the pulser over a data bus and reacts to commands to update the DDS for the next pulse.
The top level of the directory structure contains some folders which separate
the project into source code, data, scripts, and Quartus project files. The
data
folder holds memory initialization files for the FPGA's ROM. The
python
folder contains python scripts for, e.g., generating data files. There
are a few different quartus project folders at the top level: singletone
configures a board to be used in single tone mode with a set of selectable
frequencies; pulser
is the actual code run on the pulser slave boards;
devboard
has project files to use with the blue Cyclone II development board.
The src
folder separates code based on the Quartus project it belongs to:
common
is used across projects, while code in other folders correspond to the
project the folder is named after.
Be sure to program the device through the SignalTap interface, because that always seems to work.
When changing the data in the RAM mif files, the altera quartus program will not update
the design until you delete the db
and db_incremental
folders in the pulser
folder.