|
|
(24 intermediate revisions by 3 users not shown) |
Line 1: |
Line 1: |
− | {{Hierarchy header}} | + | {{Related|Firmware}} |
− | | |
| == Releases == | | == Releases == |
− | All firmware can be downloaded from [http://e-mode.phas.ubc.ca/mce_firmware/ http://e-mode.phas.ubc.ca/mce_firmware/]. Release notes for each firmware release can be found below: | + | All firmware can be downloaded from [http://e-mode.phas.ubc.ca/mce/firmware/ http://e-mode.phas.ubc.ca/mce/firmware/]. Release notes for each firmware release can be found below: |
− | * [[ Clock Card (CC) ]] | + | * [[ Clock Card firmware]] |
− | * [[ Readout Card (RC) ]] | + | * [[ Readout Card firmware]] |
− | * [[ Bias Card (BC) ]] | + | * [[ Bias Card firmware]] |
− | * [[ Address Card (AC) ]] | + | * [[ Address Card firmware]] |
− | * [[ Power-Supply Unit Controller (PSUC)]] | + | * [[ PCI card firmware ]] |
| * [[ Sync Box Firmware ]] | | * [[ Sync Box Firmware ]] |
| + | |
| + | See also: |
| + | * [[Recommended firmware versions]] |
| | | |
| == Loading firmware onto cards == | | == Loading firmware onto cards == |
Line 21: |
Line 23: |
| * Always cleanly reset the MCE after a power-up or a reconfiguration! If not, MCE communication with the PC or Sync Box may not work. On MAS prompt, type: '''''mce_reset_clean''''' | | * Always cleanly reset the MCE after a power-up or a reconfiguration! If not, MCE communication with the PC or Sync Box may not work. On MAS prompt, type: '''''mce_reset_clean''''' |
| | | |
| + | == Implementation Details == |
| | | |
− | == MCE Features and How-To Guides ==
| + | * [[ MCE Timing Diagram ]] |
− | * [[ MCE Commands ]]
| + | * [[MCE fibre protocol]] - communication between the MCE and the controlling PC over the fibre-optic link |
− | * [[MCE Timing Diagram | MCE (Firmware) Timing Diagram]] | + | * [[MCE backplane protocol]] - communication between cards within the MCE |
− | * [[ Row-specific SQ2FB (fast switching)]] | + | * Monitoring MCE Status [[http://www.phas.ubc.ca/%7Emce/mcedocs/system/monitoring_mce_status.doc DOC]] (Nov. 9, 2006) |
− | | + | * [[MCE commands]] |
− | * Data Acquisition
| |
− | ** [[ High rate acquisition | Fast Data Acquisition ]] -- i.e. up to the frame rate
| |
− | ** [[ The STOP Command ]] (CC v4.0.b, v4.0.c, v5.0.1+)
| |
− | ** [[ How to Configure Which Readout Cards Report Data ]] (CC v4.0.a+)
| |
− | ** [[ How to Read a Column at the Frame Rate ]] (CC v5.0.0 & RC v5.0.0+)
| |
− | ** [[ Rectangle Mode Data ]] (CC v5.0.0 & RC v5.0.1+)
| |
− | | |
− | * Readout Card
| |
− | ** [[ Data mode | Data Modes ]]
| |
− | ** [[ Digital 4-pole Butterworth Low-pass filter | Filtered Data & the Digital 4-pole Butterworth Low-pass Filter]]
| |
− | ** [[ Raw-mode readout | Raw 50 MHz Data ]] | |
− | ** [[ Flux jumping | Flux Jumping]]
| |
− | ** [[ FSFB Clamping Commands ]] -- to prevent unlocked pixels from ramping (RC v5.0.a+)
| |
− | ** [[ FSFB Servo Start Value ]]
| |
− | | |
− | * Address Card
| |
− | ** [[ Fast SQ2 Feedback and TES Biasing with an Address Card ]]
| |
− | ** [[ Special SQ1 Bias Commands ]]
| |
− | | |
− | * Clock Card
| |
− | ** [[ Remote Firmware Update ]] (CC v5.0.7+)
| |
− | ** [[ Internal Commands ]]
| |
− | *** [[ Arbitrary Waveform Generator ]] -- for maximum length sequences and complex impedance measurements (CC v5.0.3+)
| |
− | *** [[ Ramp Generator ]] | |
− | *** [[ Temperature monitoring ]]
| |
− | | |
− | * [[ Upgrading From 4.x.x To 5.x.x Firmware ]] -- using SCUBA-2 as an example
| |
− | | |
− | MCE Firmware Bugs/ Features Under Development has been moved to the [[intmce:MCE bugs]].
| |
| | | |
| == Firmware Development Tools == | | == Firmware Development Tools == |
− | * [[ Firmware CVS repository ]]
| |
| * [[ Quartus II Installation ]] | | * [[ Quartus II Installation ]] |
| * [[ ModelSim SE Installation ]] | | * [[ ModelSim SE Installation ]] |
| ** [[ Setting up Altera libraries in ModelSim SE ]] | | ** [[ Setting up Altera libraries in ModelSim SE ]] |
− | * [[MCE_firmware#CVS_Repository|Firmware CVS Repository]]
| |
− | * [[MCE RTL Testbenches]]
| |
| * [[ JAM Player ]] | | * [[ JAM Player ]] |
− | * [[ JRunner ]]
| |
| * [[ Convert sof to jic for EPCS64 Serial Configuration Device ]] | | * [[ Convert sof to jic for EPCS64 Serial Configuration Device ]] |
| | | |
− | == MCE Scripting == | + | == Development notes == |
− | * [[ MAS ]] | + | * [[intmce:MCE bugs]] |
− | * [[ MAS Cheat Sheet ]]
| + | * [[intmce:Firmware Features Under Development]] |
− | * [[ Using Python to Automate MAS ]]
| + | * [[intmce:Closed firmware features]] |
− | * [[ MCE: Helper programs ]]
| |
− | | |
− | == Old documents ==
| |
− | * Loading FPGA Firmware Using EthernetBlaster [http://www.phas.ubc.ca/~mce/mcedocs/software/EthernetBlaster.txt TXT]
| |
− | * Loading PSUC Microcontroller Firmware Using Atmel FLIP [[http://www.phas.ubc.ca/~mce/mcedocs/software/Programming_PSUC.pdf PDF]]
| |
− | * Firmware Overview [[http://www.phas.ubc.ca/~mce/mcedocs/others/atc/Firmware_Overview_v2.pdf PDF]] (SC2-ELE-S500-023) (ATC) (Jun. 06, 2003)
| |
− | | |
− | * Address Card:
| |
− | ** top-level [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/addr_card/addr_card.doc DOC]] (Oct. 06, 2005)
| |
− | ** ac_dac_ctrl [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/addr_card/dac_ctrl_ac.doc DOC]]
| |
− | | |
− | * Bias Card:
| |
− | ** top-level [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/bias_card/bias_card.doc DOC]] (Oct. 06, 2005)
| |
− | | |
− | * Readout Card:
| |
− | ** top-level [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/readout_card.doc DOC]] (SC2-ELE-S582-201) (Oct. 05, 2005)
| |
− | ** flux_loop [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/flux_loop.doc DOC]] (SC2-ELE-S582-202) (Sep. 15, 2004)
| |
− | ** adc_sample_coadd [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/adc_sample_coadd.doc DOC]] (SC2-ELE-S582-204) (Feb. 15, 2004)
| |
− | ** fsfb_calc [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/fsfb_calc.doc DOC]] (SC2-ELE-S582-205) (Feb. 09, 2006)
| |
− | ** Low-Pass Filtering [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/Filter.pdf PDF]] (SC2-ELE-S582-211) (Jul. 28, 2006) | |
− | ** fsfb_calculations_diagram (SC2-ELE-S582-011) [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/fsfb_calculations.pdf PDF]]
| |
− | ** fsfb_ctrl [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/fsfb_ctrl.doc DOC]] (SC2-ELE-S582-206) (Feb. 15, 2005)
| |
− | ** offset_sa_bias_ctrl (SC2-ELE-S582-207) [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/offset_sa_bias_ctrl.doc DOC]] (Apr. 04, 2005)
| |
− | ** wbs_fb_data (SC2-ELE-S582-209) [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/wbs_fb_data.doc DOC]] (Feb. 15, 2005)
| |
− | ** wbs_frame_data [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/wbs_frame_data.doc DOC]] (SC2-ELE-S582-210) (Feb. 15, 2005)
| |
− | ** fsfb_corr (flux_jumping) [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/fsfb_corr.doc DOC]] (Oct. 07, 2005)
| |
− | ** Servo-Loop Diagram (SC2-ELE-S582-012) [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/reaout_card/servo_loop.doc DOC]]
| |
− | * Blocks common to RC, AC, CC, BC
| |
− | ** dispatch [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/common_to_all_cards/dispatch.doc DOC]] (SC2-ELE-S580-202) (Oct. 31, 2005)
| |
− | *** lvds_rx [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/common_to_all_cards/lvds_rx.doc DOC]] (Oct. 3, 2005)
| |
− | *** lvds_tx[[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/common_to_all_cards/lvds_tx.doc DOC]] (Nov. 2004)
| |
− | | |
− | * Power-Supply Unit Controller:
| |
− | ** PSUC Firmware Description [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/power_supply_controller/PSUC_Firmware_Description.pdf PDF]] (SC2-ELE-S585-xxx)
| |
− | * SyncBox
| |
− | ** SyncBox CPLD Firmware Description [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/SyncBox/SyncBox_FwDescr_S589_201.pdf PDF]] (SC2-ELE-S589-201)
| |
− | ** SyncBox Microcontroller Software Description [[http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/SyncBox/SyncBox_SWDescr_S589_202.pdf PDF]] (SC2-ELE-S589-202) | |
| | | |
− | -----
| + | [[Category:Firmware]] |
− | ([http://www.phas.ubc.ca/~mce/mcedocs/hardware/Firmware_block_spec/old_firmware.html Old MCE Firmware Documents index])
| |