Difference between revisions of "MRI lab: FPGA controller documentation"
From Course Wiki
Line 1: | Line 1: | ||
==Control registers== | ==Control registers== | ||
− | |||
Line 11: | Line 10: | ||
!Function | !Function | ||
!device | !device | ||
− | | | + | {{ControlRegister|Name=PhaseIncrement|Bits=31:0|Function=Set frequency of generated sinewave|Device=/dev/pio_phaseIncrement}} |
− | + | {{ControlRegister|Name=Pulse1On|Bits=31:0|Function=Duration of first pulse|Device=/dev/pio_pulse1On}} | |
− | + | {{ControlRegister|Name=Pulse1Off|Bits=31:0|Function=Interval between first and second pulses|Device=/dev/pio_pulse1Off}} | |
− | |31:0 | + | {{ControlRegister|Name=Pulse2On|Bits=31:0|Function=Duration of second pulse|Device=/dev/pio_pulse2On}} |
− | | | + | {{ControlRegister|Name=Pulse2Off|Bits=31:0|Function=Minimum interval between end of second pulse and first pulse repeat|Device=/dev/pio_pulse2off}} |
− | |/dev/pio_phaseIncrement | + | {{ControlRegister|Name=PulseControl||Control bits for pulse generator and digitizer|Device=/dev/pio_pulseControl}} |
− | | | + | {{ControlRegister|Bits=5:4|Function=00 = adc input (normal operation); 01 = adc test signal (count); 10 = test mode (DAC output); 11 = test mode (constant 0xDEADBEEF)}} |
− | + | {{ControlRegister|Bits=3|Function=ADC gate enable}} | |
− | + | {{ControlRegister|Bits=2|Field=DAC B output|Function=0 = carrier; 1 = trigger}} | |
− | |31:0 | + | |
− | | | + | |
− | |/dev/pio_pulse1On | + | |
− | | | + | |
− | + | ||
− | + | ||
− | |31:0 | + | |
− | |Interval between first and second | + | |
− | |/dev/pio_pulse1Off | + | |
− | | | + | |
− | + | ||
− | + | ||
− | |31:0 | + | |
− | | | + | |
− | |/dev/pio_pulse2On | + | |
− | | | + | |
− | + | ||
− | + | ||
− | |31:0 | + | |
− | | | + | |
− | |/dev/ | + | |
− | | | + | |
− | + | ||
− | | | + | |
− | | | + | |
− | + | ||
− | |/dev/ | + | |
− | + | ||
− | + | ||
− | + | ||
− | |5:4 | + | |
− | |00 = adc input (normal operation); 01 = adc test signal (count); 10 = test mode (DAC output); 11 = test mode (constant 0xDEADBEEF) | + | |
− | | | + | |
− | + | ||
− | + | ||
− | |ADC gate enable | + | |
− | | | + | |
− | | | + | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | |0 = carrier; 1 = trigger | + | |
− | + | ||
− | + | ||
==API== | ==API== |
Revision as of 00:47, 19 June 2010
Control registers
Register | Field | Bits | Function | device |
---|---|---|---|---|
PhaseIncrement | 31:0 | Set frequency of generated sinewave | /dev/pio_phaseIncrement | |
Pulse1On | 31:0 | Duration of first pulse | /dev/pio_pulse1On | |
Pulse1Off | 31:0 | Interval between first and second pulses | /dev/pio_pulse1Off | |
Pulse2On | 31:0 | Duration of second pulse | /dev/pio_pulse2On | |
Pulse2Off | 31:0 | Minimum interval between end of second pulse and first pulse repeat | /dev/pio_pulse2off | |
PulseControl | /dev/pio_pulseControl | |||
5:4 | 00 = adc input (normal operation); 01 = adc test signal (count); 10 = test mode (DAC output); 11 = test mode (constant 0xDEADBEEF) | |||
3 | ADC gate enable | |||
2 | 0 = carrier; 1 = trigger |
API |