TU0135 (v1.0) 2008 5 17 Desktop NanoBoard FPGA CUSTOM_INSTRUMENT GUI ( ) IO GUI IO DelphiScript Desktop NanoBoard NB2DSK01 Desktop NanoBoard 8 DIP LED DAUGHTER BD TEST/RESET DIP ( ) DAUGHTER BD TEST/RESET ( ) LED LED 2 - DAUGHTER BD TEST/RESET LED - LED ( 1) Altium Designer \Examples\NanoBoard Common\FPGA Hardware\Custom Instrument Design 1. FPGA Altium Designer TU0116 Getting Started with FPGA Design TU0135 (v1.0) May 17, 2008 1
Desktop NanoBoard FPGA Desktop NanoBoard FPGA Web FPGA Web www.actel.com Actel Designer Libero IDE Web www.altera.com Altera Quartus II Altera Quartus II Web Edition www.latticesemi.com Lattice isplever isplever Starter Web www.xilinx.com Xilinx ISE Xilinx ISE WebPACK Web Vendor Resources (www.altium.com/community/vendorresources) Altium Designer Devices (View» Devices View) Tools Vendor Tool Support : Altium Designer 1. FPGA Custom_Instrument_Design.PrjFpg Custom Instrument Tutorial 2. Custom_Instrument_Design.SchDoc 1 1. CUSTOM_INSTRUMENT FPGA Instruments.IntLib DIPSWITCH TEST_BUTTON LED Desktop NanoBoard 8 DIP Desktop NanoBoard DAUGHTER BD TEST/RESET ( ) Desktop NanoBoard LED LED FPGA NB2DSK01 Port-Plugin.IntLib FPGA NB2DSK01 Port-Plugin.IntLib FPGA NB2DSK01 Port-Plugin.IntLib 2 TU0135 (v1.0) May 17, 2008
NEXUS_JTAG_CONNECTOR NEXUS_JTAG_PORT INV INV8B Soft JTAG (NEXUS_TMS NEXUS_TCK NEXUS_TDI NEXUS_TDO) Nexus Soft JTAG DAUGHTER BD TEST/RESET 8 8 DIP FPGA NB2DSK01 Port-Plugin.IntLib FPGA Generic.IntLib FPGA Generic.IntLib FPGA Generic.IntLib : 3. CUSTOM_INSTRUMENT Configure Custom Instrument Configuration - AIN[7..0] Data_In[7..0] - AOUT[7..0] Data_Out[7..0] - Override 4. 2 ( Tools» Annotate Schematics Quietly ) 2. - 5. TU0135 (v1.0) May 17, 2008 3
Custom Instrument Configuration IO Altium Designer IO GUI Desktop NanoBoard LED DelphiScript 1. Configure Custom Instrument Configuration Signals ( 3) 3. Signals 2. Title Example Instrument 3. Options Synchronize 4. Devices Soft Devices JTAG Use Custom Bitmap Select Bitmap Altium Designer \Examples\NanoBoard Common\FPGA Hardware\Custom Instrument Design ExampleInstrumentIcon.bmp Configuration File (*.Instrument) 5. Configuration File Name Save Configuration File To Custom_Instrument_Example.Instrument Soft Devices JTAG Altium Designer 2 From Project.Instrument Devices 4 TU0135 (v1.0) May 17, 2008
From FPGA RAM 6. Configuration Retrieval From Signals 4 4. Signals GUI GUI GUI 1. Custom Instrument Configuration Design GUI ( 5) 5. Design GUI TU0135 (v1.0) May 17, 2008 5
3 - Palette - Properties ( ) - Events ( ) DesignedAreaPanel 2. DesignedAreaPanel Height 270 352 2 GUI Palette Instrument Controls 2. TInstrumentCaption 2 TInstrumentGauge 1 TInstrumentProgressBar 8 TInstrumentLEDsPanel 2 TInstrumentLEDDigits 1 TInstrumentGraph 1 TInstrumentNumericPan el 1 TInstrumentLabel 2 TInstrumentButton 1 3. 6 Progress Bar 6 TU0135 (v1.0) May 17, 2008
6. (Properties ) 4. Caption - AutoSize: Disable - Caption: DATA INPUT MONITORING - Font» Color: CaptionText - Font» Height: -11 - Font» Name: Tahoma - Style» fsitalic: Enable - Width: 296 5. Gauge - BigTicks» Color: Lime - BigTicks» Step: 32 - Color: Black - Font» Color: White - Max: 256 - MediumTicks» Color: Silver - MediumTicks» Step: 16 - Needle» Kind: gnkteardrop - Numbers» Step: 32 - Position: 0 - SignalName: Data_In[7..0] - SmallTicks» Color: White - SmallTicks» Step: 8 6. Shift 8 Progress Bar - BarColor: Yellow - BarInactiveColor: Gray TU0135 (v1.0) May 17, 2008 7
- BarMiddleColor: Gray - ColorScheme: icscustom - Max: 1 - Position: 0 Progress Bar SignalName Data_In[7..0] Data_In[7] Data_In[6] Data_In[0] 7. LED Panel - DigitsInGroup: 8 - Metrics» EndSpace: 1 - Metrics» Space: 1 - Metrics» StartSpace: 1 - SignalName: Data_In[7..0] 8. LED Digits - DigitsInGroup: 8 - Metrics» Space: 6 - SignalName: Data_In[7..0] 9. Graph - Color: InfoBk - Grid» Visible: Disable - Height: 64 - HighThreshold» Enabled: Enable - HighThreshold» Pen» Color: Teal - HighThreshold» Value: 255 - LowThreshold» Enabled: Enable - LowThreshold» Pen» Color: Teal - Max: 265 - Min: -10 - SignalForm» NormalSignal» Color: Red - SignalName: Data_In[7..0] - Width: 264 10. Caption - AutoSize: Disable - Caption: DATA OUTPUT CONTROL - Font» Color: CaptionText - Font» Height: -11 - Font» Name: Tahoma - Style» fsitalic: Enable - Width: 296 11. Numeric Panel - Name: Output_Data - UseDefaultDigitClick: Enable 12. InstrumentLabel1 - Caption: NB_Override - Font» Color: Red - Font» Height: -13 - Name: NB_Override 8 TU0135 (v1.0) May 17, 2008
13. InstrumentLabel2 - Caption: Panel_Override - Font» Color: Red - Font» Height: -13 - Name: Panel_Override 14. LED Panel - Color: 3DDkShadow - Digits: 1 - DigitsInGroup: 1 - SignalName: Override - Style: icsgreen 15. Button - AllowAllUp: Enable - Caption: SOFTWARE OVERRIDE - Font» Height: -13 - Style» fsbold: Enable - Style» fsitalic: Enable - GroupIndex: 1 - Height: 48 - Name: Panel_Override_Button - Width: 200 7 7. High Low Graph 16. 8 InstrumentLabel AutoSize TU0135 (v1.0) May 17, 2008 9
8. Desktop NanoBoard LED Numeric Panel Desktop NanoBoard DAUGHTER BD TEST/RESET SOFTWARE OVERRIDE Numeric Panel 1. Custom Instrument Configuration Code ( 9) 9. Code DelphiScript 10 TU0135 (v1.0) May 17, 2008
: DelphiScript Altium Designer Open in Code Editor Code Code Editor 2. // procedure TDesignedAreaPanel.DesignedAreaPanelReadWrite(Sender: TObject); begin // NB_Override.Caption := ''; Panel_Override.Caption := ''; //SignalManager if SignalManager.GetSignalByName('Override').Value = 1 then //NB2DSK01 begin NB_Override.Caption := 'Hardware Override Engaged!'; SignalManager.GetSignalByName('Data_Out[7..0]').Value := 0; end else if Panel_Override_Button.Down then //Software Override begin Panel_Override.Caption := 'Software Override Engaged!'; SignalManager.GetSignalByName('Data_Out[7..0]').Value := 0; end else // /Output_Data begin SignalManager.GetSignalByName('Data_Out[7..0]').Value := Output_Data.Value; end; end; // Software Override procedure TDesignedAreaPanel.Panel_Override_ButtonClick(Sender: TObject); begin Panel_Override_Button.Down := not Panel_Override_Button.Down; end; GUI DelphiScript GUI 1. Custom Instrument Configuration Design 2. DesignedAreaPanel TU0135 (v1.0) May 17, 2008 11
3. Events OnReadWrite DesignedAreaPanelReadWrite ( ) 4. SOFTWARE OVERRIDE Button 5. Events OnClick Panel_Override_ButtonClick ( ) FPGA FPGA ( ) Desktop NanoBoard NB2DSK01 3 Altium Designer Desktop NanoBoard FPGA 1. FPGA 3 NB2DSK01 2. 3. Desktop NanoBoard USB ( ) PC 4. 10. Devices (Custom_Instrument_Design.PrjFpg) 5. AR0124 Design Portability, Configurations and Constraints Desktop NanoBoard NB2DSK01 AP0154 Understanding the Desktop NanoBoard NB2DSK01 Constraint System 1. Desktop NanoBoard PC 2. Devices Altium Designer Live Connected 3. Program FPGA ( ) JTAG Devices Reset Programmed 11. Program LED Devices AP0103 Processing the Captured FPGA Design 12 TU0135 (v1.0) May 17, 2008
GUI 1. Devices Soft Devices JTAG Running 2. ( GUI) Instrument Rack Soft Devices 12. GUI 3. Desktop NanoBoard DIP / - Gauge - Progress Bar - LED Panel - LED Digit - Graph 4. Numeric Panel ON OFF Desktop NanoBoard LED 5. Numeric Panel 1111 NanoBoard LED 3..0 13. DIP TU0135 (v1.0) May 17, 2008 13
6. NanoBoard DAUGHTER BD TEST/RESET - LED 3..0 - - DAUGHTER BD TEST/RESET LED 14. 7. SOFTWARE OVERRIDE - LED 3..0-8. SOFTWARE OVERRIDE LEDS 3..0 15. IO 14 TU0135 (v1.0) May 17, 2008
2008 5 17 1.0 Copyright 2008 Altium Limited.All Rights Reserved. - - Altium Altium Designer Board Insight CAMtastic CircuitStudio Design Explorer DXP Innovation Station LiveDesign NanoBoard NanoTalk OpenBus Nexar nvisage P-CAD Protel SimCode Situs TASKING Topological Autorouting Altium Limited TU0135 (v1.0) May 17, 2008 15