Home
Actel Firmware Usermanual
Contents
1. 6 1 1 Rcuflashprog The RCU Flashprogramer The Flash Programer is a Tool for programing Flash memory It is configurable through a config file which can be specified as a parameter Ircuflashprog flashconf txt An example of the configuration file can be found at the end of this README file For the initial config the initial configurationfile and the path to the initial configurationfile have to be set Also the startaddress for the initial configuration For the scrubbing The scrubbingfile and the path to the scrubbingfile have to be set also the the start address for the scrubbing For the flash programing of the frames The path for the framefiles has to be set also there have to be all the frames specified in the framesfile the three name variables define the filename of the framefiles The 5 is therefore replaced with X Y Z where X 1s the Block Y is the Major and Z the Minornumber The startaddress has to be defined also the size of the readheader and the readfooter actel usermanual doc Johan Alme amp Raed usermanual 16 25 init program file enable_icfile true path icfile mnt kjekspc4 dominik bin rcuflashprog name icfile initconfig bit startaddr 1cfile Oh scrubbing file enable_scfile true path_scfile mnt kjekspc4 dominik bin rcuflashprog name_scfile scrubbing bit startaddr_scfile 60000h frame file enable_frfiles true path frfiles
2. stepping through one single frame at the time by DCS w 0xb000 0x100 command making it possible to read the contents of the memories from DCS board for more thorough error logging and handling continuously running a given number of cycles or until an abort w 0xb000 0x200 is issued The given number of cycles num until an abort must first be written 0xb105 Ox num to the data register If the data register stores the value the operation will run continuously until an abort is issued actel usermanual doc Johan Alme amp Ketil Raed usermanual 10 25 Delete the configuration memory of the Xilix Virtex II FPGA this command activates the prog b line of the SelectMAP w 0 0002 0 0 1 interface thereby deleting the content of the configuration memory of the Xilinx This only works when xa is written to the stop power up register Oxb112 to disable automatic reconfiguration of the Xilinx Some additional commands exists which are related to communication with the SelectMAP interface These commands are recommended use for advanced users only Issue startup procedure of Xilinx Oxb002 0 2 Write a 16 bit word to the SelectMAP IF by first w 103 Ox data writing to the data register Oxb103 and then w 0x5002 0 4 issuing the command Issue a read from the SelectMAP IF by first writing w Oxb113 Ox num the number of words to read in the data register w 0 0002 0x8 Oxb103 If the da
3. and frame 15 0 The proper addresses for the frame will be inserted here by the program For every frame it creates three files e one file with the raw readback data e one file with the read header before the data and the read footer after the data e one file with the write header before the data and the write footer after the data 6 1 3 Framever The framever is used to run a more thorough readback and verification operation from the DCS board The tool makes it possible to the location of the actually SEUs within the individual frames The tool will not be discussed this version of the user manual 6 2 How to read out a single frame from the SelectMAP interface A full frame read back via the SelectMAP interface carry out by first writing a sequence of header data to the SelectMAP interface then reading back the frame content before closing with a sequence of footer data The header and footer data are special commands for preparing the SelectMAP interface for a frame read back 9295566 Sync word 300090041 Type 1 header Write 1 word to cmd register 00000007 Reset CRC 30016001 1 header Write 1 word to frame length register 00000069 Set frame length 30008001 Type 1 header Write 1 word to cmd register 00000004 Read configuration data command 30002001 Write frame address command Sframeaddr Frame address ex clb major 5 minor 3 28006000 1 header Read from Configu
4. mnt kjekspc4 dominik bin rcuflashprog name_rawframefile frame hex name_readframefile r_frame hex name writeframefile w_frame hex framesfile frames txt startaddr frfiles 100000h frame offset 2h header size read 1Bh footer size read OBh 6 1 2 Framegen The framegenerator In order to prepare for frame by frame readback and verification the different frame files must be generated This 1s carried out by framegen software tool Framegenerator is a Tool for reading out frames from Xilinx configuration memory To run it 5 input files are needed e Frames file 1 6 frames txt Read header file 1 6 read header txt Read footer file 1 e read footer txt Write header file 1 e write header txt Write footer file 1 e write footer txt These files have to be given to the program on startup as parameters 1 Jframegen frames txt read header txt read footer txt write header txt write footer txt The frames file contains the framenumbers coded Block Major and Minornumber The syntax in the frames file is like this Block Major Minor 1 actel usermanual doc Johan Alme amp Raed usermanual 17 25 0 5 3 0 5 4 header and footer files contain the commands to be executed before after reading of a frame Also this data is included in the created readback files The addresses of the frames have to be inserted as variables into this file frame addr31 16
5. The addresses of the pointers are pre defined and a zero value in the pointer means that the given file does not exist in the Flash memory The default mode pointer contains a pointer to one of the three other pointer locations actel_usermanual doc Johan Alme amp Ketil Raed usermanual 22 25 2 The info space This section contains the address location of the initial configuration data file and the scrubbing data file It also contains the address location and various frame information for the frame files 3 The file space In the section of the flash all the different files are stored That is configuration data file the scrubbing data file and the all the frame files needed for frame by frame readback and verification both read frame and write frame files Table 6 7 gives the detailed location of the frame related information in the flash memory The information 15 stored in 16 bit words Relative address position 0 and 1 holds the 6 MSB and 16 LSB of the read frame start address During initial configuration address position 2 and 3 holds the stop address of the configuration data However this information 1s not used during readback and verification Further frame information 15 stored in the three consecutive flash address positions Bit position is he 0 Fie space start address 1 Fite space start adress 16188 2 Fie space stop Not use SMSB N Fil
6. addresses The different pointers points to addresses where more information is stored Default mode pointer USED Configuration data start word address Info space Start and stop address for initial Configuration data stop word address configuration data stream The addresses are given in word addresses Scrubbing data start word address Start and stop address for scrubbing data stream Scrubbing data stop word address The addresses are given in word addresses Start address of read frame Relative address jump to next read frame Number of frames to read back Size of read frame data Size of write frame data including header footer Size of read header Size of read footer See Table 6 7 for detailed information Configuration data file File space The actual files are stored here The commands needed for the Xilinx to understand Scrubbing data file the frame files are included as headers and footers in the actual files The write frame files will always be located the address Read frame start address 0x100000 Example If the address of the first read frame 0 100000 the corresponding write frame will be located at address 0x200000 Table 6 6 The Flash memory is divided into to three different spaces as described below The Flash device is divided into to 3 different spaces 1 The pointer space This is located in the start of the Flash memory and contains pointers to location in the info space
7. mapped mode 2 SelectMAP mode 3 Flash mode The default mode is memory mapped mode which gives you direct memory access of the registers in the FPGAs on the RCU motherboard Software Software Software Linux incl drivers Linux incl drivers Linux incl drivers Altera FPGA incl Altera FPGA incl Altera FPGA incl ARM core ARM core ARM core 8 bit data 23 bit address 8 bit data 16 bit address 5 bit ctrl 7 bit ctrl 32 bit data 3 bit ctrl DCS board _ RCU board RCU Flash RCU Xilinx ll ban RCU Flash Memory vp 7 Selectmap Selectmap 075 Device Bus Interface Device Bus Interface Figure 4 1 Sketch showing a logical model of the three modes From left to right Flash mode Select MAP mode and Mempry mapped mode normal operation In Memory Mapped Mode the RCU Flash Memory is read only Flash mode gives the dcs board direct control of the flash memory on the RCU motherboard while SelectMAP mode gives the dcs board direct control over the SelectMAP interface of the Xilinx Virtex II on the RCU motherboard 4 1 Memory mapped mode Normal operation in memory mapped mode assumes that the flash is setup with correct pointer information and configuration files and frames If the on board Flash device contains no data or incorrect data section 5 provides more information
8. txt write footer txt Depending on the number of frames to be generated specified in frames txt this operation may take several minutes 5 1 2 2 Rcuflashprog Enable the frame file settings in the flashconf txt enable frfiles true As for initial configuration and scrubbing use default values unless other paths and filenames are used actel usermanual doc Johan Alme amp Ketil Raed usermanual 14 25 Save changes and type the command rcuflashprog flashconf txt in the command prompt The file s will now be programmed to the flash To configure the Xilinx Virtex II with the new initial configuration file type the command rcu sh w 0 000 0x4 in the command prompt The Xilinx will now be programmed See section 6 for information on the frame by frame readback and verification feature of the firmware actel usermanual doc Johan Alme amp Raed usermanual 15 25 6 Advanced User 6 1 Software tools The Actel firmware gives the 3 options of initial configuration scrubbing and frame by frame readback and verification Need file s in flash Initial configuration Full configuration bit file Rcu sh Rcuflashprog Scrubbing Scrubbing configuration bit Rcu sh Rcuflashprog Rcubitfileprog Frame by frame R amp V Write frame files Framegen Read frame files Rcuflashprog framever Figure 6 1 The table lists the different software tools that can be used to configure the external flash device
9. 0000000 7 3 3 ERROR REGISTER STRUCTURE 7 3 4 VERSION NUMBER REGISTER 7 7 4 RCU SH AND DCS RCU OPERATION 7 4 1 MEMORY MAPPED MODE cscsccscecescecescecescscscsceccscecescscescecesescesescesescecesesceces 8 4 2 10 4 3 MODE 11 5 CONFIGURATION OF THE EXTERNAL FLASH DEVICE 11 5 1 USING THE SOFTWARE TOOLS 11 5 1 1 Prepare for initial configuration amp scrubbing 12 24 2 Prepare for frame by frame readback and verification 15 ADVANCEDUSER 15 6 1 SOPT WARE TOOLS LIN 15 6 1 1 Rcuflashprog The Flashprogramer eese 15 6 1 2 Framegen The framegenerator esses eene nennen 16 6 1 3 12201105 2 PROTEST 17 6 2 HOW TO READ OUT A SINGLE FRAME FROM THE SELECTM AP INTERFACE 17 6 3 ARCHITECTURE EXTERNAL FLASH 21 6 3 1 Setting up Flash device for initial configuration and scrubbing 27 6 4 PREREQUISITES OF ACTIVE PARTIAL RECONFIGURATION 2 25 actel usermanual doc Johan Alm
10. F 99 2E0000 2bE7FFF 18000 1FFFF 180000 187FFF 100 2E8000 2bEFFFF 20000 27FFF 188000 18FFFF 101 2F0000 2F7FFF 28000 2FFFF 190000 197FFF 102 2F8000 2FFFFF 30000 37FFF 198000 19FFFF 103 300000 307FFF 38000 1A0000 1A7FFF 104 308000 30FFFF 40000 47 1A8000 1AFFFF 105 310000 317FFF 48000 4 1 0000 1B7FFF 106 318000 31FFFF 50000 57FFF 188000 1BFFFF 107 320000 327FFF 58000 5FFFF 1 0000 1C7FFF 108 328000 32FFFF 60000 67FFF 168000 1CFFFF 109 330000 337FFF 68000 6FFFF 1D0000 1D7FFF 110 338000 33FFFF 70000 77FFF 1D8000 1DFFFF 111 340000 347FFF 78000 7FFFF 1E0000 1E7FFF 112 348000 34FFFF 80000 87FFF 1E8000 1EFFFF 113 350000 357FFF 88000 8FFFF 1F0000 1F7FFF 114 358000 35FFFF 90000 97FFF 1F8000 1FFFFF 115 360000 367FFF 98000 9FFFF 200000 207FFF 116 368000 36FFFF A0000 A7FFF 208000 20FFFF 117 3 0000 377FFF A8000 AFFFF 210000 217 118 3 8000 37FFFF B0000 B7FFF 218000 21FFFF 119 380000 387FFF B8000 BFFFF 220000 227FFF 120 388000 38FFFF 0000 C7FFF 228000 22FFFF 121 390000 397FFF C8000 CFFFF 230000 237FFF 122 398000 39FFFF D0000 D7FFF 238000 23FFFF 123 3A0000 3A7FFF D8000 DFFFF 240000 247FFF 124 3A8000 E0000 E7FFF 248000 24 125 0000 3B7FFF 8000 250000 257 126 3B8000 3BFFFF 0000 F7FFF 258000 25FF
11. FF 127 3C0000 3C7FFF F8000 FFFFF 260000 267FFF 128 3C8000 3CFFFF 100000 107FFF 268000 26FFFF 129 3D0000 3D7FFF 108000 10FFFF 2 0000 277FFF 130 3D8000 3DFFFF 110000 117FFF 2 8000 27FFFF 131 3E0000 S3E7FFF 118000 11FFFF 280000 287FFF 132 3E8000 SEFFFF 120000 127FFF 288000 28FFFF 133 3F0000 3F 7FFF 128000 12FFFF 290000 297 1 34 3F8000 3FFFFF Table 6 10 Sector addresses in the BB type Flash Device To erase a sector address the start address of the sector you want to erase The first sectors given with grey background sec 0 7 are smaller sectors in the boot partition of the Flash These sectors are used as the pointer space and most often as info space in the application actel usermanual doc Johan Alme amp Ketil Raed usermanual 25 25 6 4 Prerequisites of Active Partial Reconfiguration The RCU consist of a Xilinx Virtex 2 Pro vp7 with an Actel device communicating with the Selectmap Interface of the Xilinx FPGA The firmware inside the Actel has the possibility to both read and write to the configuration logic using slave seleccMAP mode The Actel firmware supports main features e read back all block num 0 and block num 2 frames continuously and overwrite any of these 1f an error 1s seen The frames are first read back in a controlled setup and stored to be used as comparison e Use the active partial reconfiguration file generated by ISE to continuously o
12. back all frames has been done otop power up Code 4 OxB112 W Writing to this register prevents the Actel from trying to E automatically configure the Xilinx if sm done is low Memory Communication Memory OxB5FF Communication Table 3 1 Externally accessible registers Registers 0xb104 through 0xb107 are referred to as information registers Legend W write R read T write trigger not physical registers actel usermanual doc Johan Alme amp Raed usermanual 6 25 3 1 Command Hegister Structure The normal operation is command based This means that most functionality 15 controlled by command registers that is made available for the DCS board In addition an input data register 15 used as a configuration register for some of the commands Data register 0 103 Description CLEAR ERROR Ox1 Not Used Clears error register and brings FW out of an illegal state Must be done if error has occurred CLEAR STAT Clears status register and counters INIT CONFIG Not Used Initial configuration of Xilinx from Flash SCRUB SCRUB CONT 0x20 Num of times to run If Scrub Continuously from Flash Zero then run continuously until abort Not Used Read back single frame from Xilinx and clear error if found CONT 0x200 Num of times to run If Continuously read back Xilinx and continuously until abort Aborts ongoing operation Table 3 2 Command Register Code
13. bitgen w d g Persist Yes Xilinx FW 190606 rcu ncd rcu bit b Active partial reconfiguration scrubbing file bitgen w d g Compress g Persist Yes g ActiveReconfig Yes g PartialMaskO 799 0 PartialMask1 0 Xilinx FW 190606 rcu ncd rcu apr bit 8 PartialMask2 3F actel usermanual doc Johan Alme amp Ketil Raed
14. e 1 File 2 FFile 4 register 1 rameoffset number of frames 6 Frame info register3 Read header size 1 Read footer size 1 MSB of write frame size U O MSB of write frame size Table 6 7 Overview of frame information content in the Flash Memory Device 6 3 1 Setting up Flash device for initial configuration and scrubbing Example case Initial configuration file top_level bit of size 560751 bytes Scrubbing file level scrub bit of size Setting up Pointer Space and Info Space The addresses of the pointers are pre defined and a value of OxFFFF the pointer means that the given file does not exist the Flash memory Pointer 7 Address BB type Flash Init Config Pointer 0x000000 Info space start address 21 16 0x000001 Info space start address 15 0 0x001000 Info space start address 21 16 0x001001 Info space start address 15 0 0x002000 Info space start address 21 16 0x002001 Info space start address 15 0 Table 6 8 Pointers and their physical addresses in the BB type Flash Device Please note that all pointers are in separate sectors in the Flash Memory Device making it possible to delete only one pointer while keeping the rest For sector addresses look in ref 4 table MX29LV640BT Sector Group Architecture and column x16 Address range actel usermanual doc Johan Alme amp Ketil Raed usermanual 23 25 The point
15. e amp Raed usermanual 3 25 1 Document control 1 1 Revision history Document status Responsible 02 11 06 First draft JA KR 08 04 07 Small error corrections on address mapping 0 3 1 2 References specification User Guide 3 Ds083 pdf V4 5 Oct 05 Virtex Il Pro and Virtex Il pro X Platfroom FPGAs Complete Data Sheet 4 MX29LV640BT BB 1 2 pdf V1 2 Sep 95 MX29LV640BT BB 64M BIT 8Mx8 4Mx16 single voltage Only Flash Memory Data Sheet 5 ProASICPlus DS pdf V5 0 Aug 05 ProASICPLUS Flash Family FPGAs Data Sheet 1 3 CVS This document and the complete project are checked in to the ALICE CVS database at the University of Bergen Url http web ift uib no kjekscgi1 bin viewcvs cegi vhdlicvs Module name 15 rcu_cpld 1 4 Downloads Visit http web ift uib no kjeks wiki for future updates on this document programming files and detailed documentation actel_usermanual doc Johan Alme amp Ketil Raed usermanual 4 25 2 Overview DCS board embedded computer Banko DCS driver Altera FPGA zu w ARM cpu B Mem mapped if Flash if DCS driver Bank 3 C Selectmap if w Linux RCU motherboard Pointer space Info space Kilinx Radiation tolerant Virtex Il Pro SelectMap FPGA FPGA Actel File space FLASH jtag jtag The solution on the RCU boards consists of a flash based Ac
16. er locations contain the addresses of the respective file space information Though these addresses can be any addresses on the Flash device it is convenient to specify some default addresses to use Type of info space Start address Type of flash BB Scrubbing 0x4000 BB Table 6 9 Default addresses of the different info spaces In order to setup the Info Space one must have the following information e Start address of the files 1n the Flash Memory This can be any address o Start address of initial configuration file 1 6 0 0 o Start address of scrubbing file 1 e 0x50000 o Start address of read frame files 1 e 0 100000 e Stop address of the initial configuration and scrubbing file in the Flash Memory This can be calculated from the file size and the start address If the file is 10 bytes it is written over 5 addresses 1 6 the stop address 15 o Ox lt stop addr gt Ox lt start Ox lt byte 2 gt 1 e Pointer address This is given in Error Reference source not found It is also important to remember the s switch when writing the file to the flash memory as this swap the bytes so that they are injected the correct order enable Enables flash mode 0 0 0 0 set up init config pointer 0 0 0x3000 position of start address 0x3000 0 0 start address 21 16 of init cfg file 0x3001 0x8000 start address 15 0 of init cfg file 0x3002 0x5 stop address 21 16 of init cfg file 0x3003 0 2736 Stop add
17. oftware tools for frame generation and flash programming Framegen reads back frame data via the SelectMAP interface and generates the correct frame files to be programmed to the flash e Rcuflashprog programs the initial configuration file the scrubbing file and the frame files to the correct locations in the flash The rcuflashprog is used together with a configuration file called flashconf txt This file contains different parameters that can be set according to which operation that will be carried out That 1s one can choose to program the configuration file the scrubbing file or the frame files separately or a combination of these files This 1s done by setting the different enabling parameters connected to the respective files to either true or false actel usermanual doc Johan Alme amp Raed usermanual 12 25 5 1 1 Prepare for initial configuration amp scrubbing Software tools Configuration files Rcuflashprog Flashconf txt The default setting is to erase Rcu bit or other confirguration file the full content of the flash apr bit or other scrubbing file Enable the init program file and scrubbing file settings and disable the frame file settings in the flashconf txt enable icfile true enable programming of initial configurationfile enable scfile true enable programming of scrubbing file enable frfiles false disable programming of frame files The path and filename have defa
18. on how to proceed Table 4 1 lists the general commands used to write to and read from register and memory locations in the Actel firmware actel usermanual doc Johan Alme amp Raed usermanual 9 25 Command Get help on commands help single write w rite Ox address Ox data w rite Ox address num Ox data Multiple write num number of sequental addresses to write the given data to single read r lt ead gt Ox address Multiple read lt gt Ox address num i num number of sequental addresses to read Table 4 1 General rcu sh commands The most frequent used commands during normal operation are e By reading back register Oxb100 through 0 6107 e By writing to the stop power up register 0 112 e Clearing error register 0 000 0 1 e Clearing status register information registers 0 0000 0 2 0xb100 4 0xb104 0xb107 Bysingle command from DCS board e On power up of the board 11 If Xilinx is not configured and the stop code is not written to the stop power up code register Oxb112 asingle reconfiguration 0 000 0x10 e continuously running a given number of cycles or until an abort w 0 000 0x20 is issued The given number of cycles num until an abort must first be written w 0 0103 Ox num to the data register If the data register stores the value the operation will run continuously until an abort is issued
19. r reading out a single frame This example 15 for CLB BA 00 with MJA 3 and MNA 2 which gives the address 0x00060400 actel usermanual doc Johan Alme amp Ketil Raed usermanual 19 25 write header commands DxblO0s 0 002 0x4 0103 QscETI E 0 002 0x4 Oxb103 99 0 002 0x4 Oxbl03 0x5566 Oxb002 0x4 0x6103 0x3000 0 002 0x4 Oxb103 0 8001 Oxb002 0 4 Oxb103 0x0000 Oxb002 0 4 Oxb103 0 0007 0 002 0x4 Oscpqo 3 022001 0 002 0x4 Oxb103 0x6001 0 002 0 4 Oxb103 0x0000 0 002 0x4 Oxb103 0 0069 0 002 0x4 Oxb103 0x3000 0 002 0x4 103708 0071 0 002 0x4 Oxb103 0x0000 0 002 0x4 Oxb103 0x0004 0 002 0x4 Oxb103 0x3000 0 002 0x4 Oxb103 0x2001 0 002 0x4 T 9frame addr32 16 0 103 0x0006 w 0 002 0 4 Sframe addr32 16 Oxb103 0x0400 0 002 0x4 Oxb103 0 2800 0 002 0x4 Oxb103 0x6000 0 002 0x4 Oxb103 0 4800 0 002 0x4 Oxb103 0 0044 0 002 0 4 Oxb103 0x2000 0 002 0 4 0 103 0 0000 0 002 0 4 Oxb103 0x2000 0 002 0x4 0 103 050000 0 002 0 4 issue multiple read 212 2 424 0x1a8 16 bits words to account for pad data frame w 0xb103 0xla9 actel_usermanual doc Johan Alme amp Ketil R ed 5 5 5 5050 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 5 50505050 50505050 5 05050505 05 5 5 5 5 5 5 5 555 552 55 55 5 usermanual 0xb002 0x8 write footer commands 5 2 5 5 5 5055 Z X 2 5 2 5 2 05103 0
20. rame and verify OxE Read back frame and verify continuous Table 3 4 Status register 0xB100 3 3 Error register structure T RRR mM 1 Parity error detected in SelectMAP RAM iPamyewordeededinFashRAM 0 1 Parity error detected Flash RAM 7 i 1 Unknown command issued to Smap interface Sree oenae retas vas ries 1 Busy on SelectMAP interface was not actived Smap Done failed 0 Done detected after configuration of Xilinx 1 Failed to detect Done from SelectMAP interface Table 3 5 Error register 0xB101 3 4 Version number register structure For firmware version v1 03 major number this register will contain the value 0x103 Table 3 6 Version number register 0xB103 4 Rcu sh and DCS RCU operation modes The RCU Shell is a small command line software for communicating with the firmware on the motherboard that 1s the Xilinx Virtex II and Actel firmware It is started by simply typing rcu sh at the command line This will bring you to the actel usermanual doc Johan Alme amp Ketil Raed usermanual 8 25 shell mode where different types of commands can be executed Issuing a command in the rcu sh software be done either by writing rcu sh command in the dcs board linux terminal prompt or by first starting the rcu sh software and then write the command The RCU motherboard can be operated in three different modes 1 Memory
21. ration Out reg FDRO 480000D4 Type 2 header Read 212 words from FDRO 20000000 NOOPs to flush the register 20000000 Table 6 1 Read frame header This table is based on table 4 37 in the Virtex II FPGA user guide Ref No 2 without the commands related to the shutdown actel usermanual doc Johan Alme amp Raed usermanual 18 25 30008001 Type 1 header Write 1 word to cmd register 00000007 Reset CRC 30008003 1 header Write 1 word to cmd register 0000000D de synch interface 20000000 NOOPs to flush the register 20000000 Table 6 2 Read frame footer This table is based on table 4 37 in the Virtex II FPGA user guide Ref No 2 without the commands related to the shutdown In between the header and footer the read back frame file 1s stored The data must be ordered following a Big Endean 16 bit system The frames have the following address composition JX 31 27 26 25 24 17 00000 XXXXXXXX XXXXXXXX 000000000 Table 6 3 Virtex II Pro frame address composition See the Virtex II FPGA user guide Ref No 2 for more information on addressing the different frames and reading and writing frame data In order to write data to the SelectMAP interface the following rcu sh commands use W 0 103 Ox data write data to actel data register W 0 002 0 4 issue a write of data to the SelectMAP In Table 6 4 an rcu sh script example 15 given fo
22. ress 15 0 of init file 8 0x8000 bitfile Initial configuration file OXO UKU set up scrubbing pointer 0x1000 0x4000 position of start address 0 4000 0 5 start 21 16 of scrubbing file 0 4001 0 0000 start address 15 0 of scrubbing file 0x4002 0 7 stop address 21 16 of scrubbing file 0 4003 0 8 88 stop address 15 0 of scrubbing file s 0 60000 lt bitfile gt 4 Scrubbing file isable Disables flash mode it it it it W W W W W W W W W W W W d Figure 6 2 Script for setting up initial configuration file and scrubbing file on Flash Memory Device with pointer and start and stop addresses 6 3 1 1 Sector Addresses in Flash Memory Device This information is extracted from ref 4 table MX29LV640BB Sector Group Architecture on page 6 actel_usermanual doc Johan Alme amp Ketil Raed 55 Address range hex usermanual 24 25 Address range hex 0 55 130000 137 298000 29FFFF 1000 1FFF 138000 13FFFF 2A0000 2A7FFF 2000 2FFF 140000 147FFF 2A8000 2AFFFF 3000 148000 14FFFF 2B0000 2B7FFF 4000 4FFF 150000 157FFF 2B8000 2BFFFF 5000 5FFF 50 158000 15FFFF 95 2C0000 2C7FFF 6000 6FFF 51 160000 167FFF 96 2C8000 2CFFFF 7000 2 168000 16FFFF 97 2D0000 2D7FFF 8000 FFFF 170000 177FFF 98 2D8000 2DFFFF 10000 17FFF 178000 17FFF
23. s 0xB000 Used for executing the main tasks of the Actel firmware Data register Description 0xb103 INIT XIL 0x1 Not Used Do init procedure of Xilinx Will erase the content of the Xilinx configuration memory STARTUP Not Used Do startup procedure of Xilinx mee Data to be written Write a 16 bit word to SelectMAP IF Number of 16 bit words Issue a read command to read If this register is SelectMAP Only effective if 0 only 1 read op is certain write commands been performed issued first Not Used Issue abort sequence Table 3 3 Command SM Register Codes 0xB002 The SelectMAP Command register is used for executing atomic tasks on the Select MAP bus actel usermanual doc Johan Alme amp Raed usermanual 7 25 3 2 Status register structure Value of the Stop power up 11 8 Automatic configuration of Xilinx is code register 1 12 deactivated Null pointer in flash 0 Flash contains a pointer value 1 Flash contains no pointer value Busy 0 Configuration controller ready to received command 1 Configuration controller is busy with ongoing task command 7 Notusd 5 omap busy 4 0 SelectMAP interface module ready 1 SelectMAP interface busy Last Active code 3 0 Contains the last task carried out by the configuration controller OxA Initial configuration OxB Scrubbing OxC Scrubbing continous OxD Read back f
24. t The Xilinx virtex Il must read header txt configured with the proper read footer txt firmware write header txt write footer txt Rcuflashprog Flashconf txt The default setting is to erase Rcu bit or other configuration the full content of the flash Hcu apr bit or other scrubbing file frames txt frame hex frame hex w frame hex Optional the programming of the initial configuration file or scrubbing file can be disabled 5 1 2 1 Framegen In order to prepare for frame by frame readback and verification the different frame files must be generated This 15 carried out by the framegen software tool It reads out the frames specified in the frames txt file from the Xilinx Virtex II The frames are stored as hex files 3 different groups e original frame data frame hex e read frame data frame hex read header txt amp read footer txt are added write fram data frame hex read header txt amp read footer txt are added See section 6 1 2 for more information about the configuration files Before the framegen software is started make sure that the Xilinx Virtex II is configured with the correct firmware It is also important to check if you can communicate with the Actel Device and the Flash Device If you get errors when doing this the Xilinx DCS interface is not correct Start the framegen software with the command Jframegen frames txt read_header txt read_footer txt write header
25. ta register contains 0 only 1 word is read The result will be placed in the actel internal 0xb400 num SelectMAP user memory RAM and can be read num number of words to read out by issuing the command Issue the SelectMAP abort sequence Oxb002 0x10 Table 4 2 Advanced commands related to the SelectMAP interface 4 2 Flash mode In this mode the firmware on the DCS board gets direct access to the Flash device control and data bus interface following options available Disable flash mode flash disable Get help on commands flash help flash write Ox address Ox data num Write to single address in flash num number of sequental addresses to write the given data to flash write s Ox address file size Write a file from a start address in s byteswap enabled the flash size number of 16 bit words to write to the flash from beginning of file Erase sector flash erase sec Ox sector address flash read Ox address num Read single address from flash num number of sequental address to read from the given address flash verify Ox address file Verifies that the content of the flash from the given address matches the content of the given file Verify content of the flash memory actel_usermanual doc Johan Alme amp Ketil Raed usermanual 11 25 Table 4 3 Available rcu sh commands in FLASH mode The command interface to the Flash device is equal to normal operation of rc
26. tel FPGA that communicates with the SelectMAP Interface on the Xilinx Virtex II pro and an on board Flash Memory The Actel FPGA has a communication interface upwards to the DCS board needed configuration files for the Xilinx are stored on the Flash Memory Due to the limited access to the Actel for later firmware updates the main focus in the development of the firmware has been robustness Thus as much functionality as practical possible is handed over to the DCS board actel usermanual doc Johan Alme amp Raed usermanual 5 25 3 Actel firmware global registers bit Command 1 OxBOO0 W Writing to this register triggers a command execution See Table 3 2 for available commands Command SM 12 0 002 W Writing to this register triggers a command execution for the SelectMAP See Table 3 3 for available commands Status 12 OxB100 R Status Register Table3 4 Error 8 08101 R___ Error Register Table 3 5 Version Number 16 0 8102 R Firmware version Table 3 6 Input Data 16 OxB103 RW Data to write to Actel decided by command how it should be interpreted RB_ErrCnt 16 OxB104 Number of Errors found readback and verification of Xilinx Configuration Memory given by the sequence stored in the Flash memory HB FrameNumber OxB106 Last frame being verified as given by the Em stored in the Flash memory HB numOfCycles 16 OxB107 Number of times a complete Frame by Frame read
27. u sh only typing the word flash in front of the command When writing to the external flash device it is important to remember that you can only write zeros not ones to the flash memory This means that if something wrong is written then one must erase the sector and rewrite all what is written into it It is also very important to not overwrite anything in the areas of the programming files as this can cause damage to the Xilinx when configuring it 4 3 SelectMAP mode In this mode the firmware on the DCS board gets direct access to the SelectMAP interface For the moment this mode only supports initial configuration using the following command sequence 1 rcu sh sm enable 22 211266 85 gt 3 rcu sh sm disable 5 Configuration of the External Flash Device The on board Flash memory device plays a key role in the proper operation of the Actel firmware Without a correct configuration of this Flash memory the Actel firmware will not be able to carry out the main tasks of initial configuration scrubbing and frame by frame readback and verification The external flash device can be configured using a combination of the rcu sh software and or other dedicated software tools Section 5 1 describes the approach to configure the external flash device using the dedicated software tools Section 6 1 gives a detailed description of the software tools 5 1 Using the software tools There are 2 available s
28. ult settings and must be changed if other paths or filenames are used It is however not recommended to change any other default values such as for instance the start addresses This may lead to incorrect configuration of the flash device and possible failure in the firmware operation lashprogramer Contig enable erase enable erase true init program file enable icfile true path_icfile mnt dcsshare name_icfile rcu bit startaddr_icfile 8000h scrubbing file enable scfile true path_scfile mnt dscshare name scfile rcu apr bit startaddr scfile 60000h fframe file enable frfiles false path frfiles mnt dcsshare name rawframefile frameS hex name readframefile r_frameS hex name writeframefile frameS hex framesfile frames txt startaddr frfiles 100000h frame offset 2h header size read 1Bh footer size read OBh Save changes and type the command rcuflashprog flashconf txt in the command prompt The file s will now be programmed to the flash To configure the Xilinx Virtex II with the new initial configuration file type the command rcu sh w 0xb000 0x4 in the command prompt See section 6 for information on the scrubbing feature of the firmware actel usermanual doc Johan Alme amp Raed usermanual 13 25 5 1 2 Prepare for frame by frame readback and verification Software tools Configuration files Framegen frames tx
29. usermanual 1 25 Actel Firmware Usermanual EZ XILINX VIRTEX II xc2vpa FF672CGB0429 01314938 Eum 22 222 oo TAIWAN nf v mpm RE ee omnim mm E A ProASIC Plus 075 TQ144 0329 NVMIVA 0099 1112 06 11907947152 EERSTES Wr Ban TR Document actel usermanual doc Document Revision 0 2 Firmware Revision 1 3 Date Created on 8 9 2006 9 15 00 AM Author Johan Alme R ed KR Johan alme 1ft uib no ketil roed ift uib no Last Saved By Johan Alme May 2007 actel usermanual doc Johan Alme amp Ketil Raed usermanual 2 25 FIRMWARE USERMAN UAL 1 L DOCUMENFCONFROD D 252 3 1 1 REVISION HISTORY 3 1 2 REFERENCE S aneneen 3 1 3 3 1 4 POW INOS 3 2 525552 S 4 3 FIRMWARE GLOBAL REGISTERS 5 3 1 COMMAND REGISTER STRUCTURE cccscecesceccscecscecescececescecescecescscesescesescecs 6 3 2 STATUS REGISTER 8 0 0 00000000000000
30. verwrite the configuration memory To be able to do this some precautions needs to be made at design time of the Xilinx design 1 The input LUT of the Slices cannot be used as writable memory elements Practically this means to unselect shift register extraction under HDL options in the Synthesis menu as well as choosing to extract memory elements to BRAM 2 The first BRAM major frame must not be used Practically this 1s to not use the very first BRAM slices which 15 done by the use of the CONFIG PROHIBIT argument in the ucf file as shown below CONFIG PROHIBIT 16 9 CONE IG PROHIBIT MULII9XlIS9 XU0Y9 CONFIG PROHIBIT 16 0 8 CONFIG PROHIBIT 1 18 18 X0Y8 CONFIG PROHIBIT 16 7 CONFIG PROHIBIT 01118 18 0 7 CONFIG PROHIBIT 16 0 6 CONFIG PROHIBIT MULT18X18 X0Y6 CONFIG PROHIBIT 16 5 CONFIG PROHIBIT MULT18X18_xX0Y5 CONFIG PROHIBIT 16 0 4 CONFIG PROHIBIT MULT18X18_xX0Y4 CONFIG PROHIBIT 16 CONFIG PROHIBIT MULT18X18_X0Y3 CONFIG PROHIBIT RAMB16_X0Y2 CONE LG PROHIBIT MUBITISGXIS X0Y27 CONFIG PROHIBIT 16 1 CONFIG PROHIBIT 1 18 18 1 CONFIG PROHIBIT 16 0 0 CONFIG PROHIBIT MULT18X18_xX0YO 3 The selectMAP pins must be set to persist 4 Bit files should be generated using the following bitgen commands a Initial configuration file
31. xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0xb103 0xb002 0x3000 0x4 0x8001 0x4 0x0000 0x4 0 0007 0x4 0x3000 0 4 68001 0x4 0x0000 0x4 0x000D 0x4 0x2000 0x4 0x0000 0x4 0 2000 0 4 0 0000 0x4 Table 6 4 rcu sh script commands for reading out a single frame via the SelectMAP interface This example is for frame address 0x00060400 which is BA 00 MJA 3 and MNA 2 A single frame consists of 106 words of 32 bits In order to account for the internal frame buffer in the SelectMAP interface it is necessary to first read back one extra frame which is known as a pad frame Since the DCS RCU interface 15 16 interface this means that 106 x 2 212 words of 16 bits must be read back for one frame After executing the script in Table 6 4 the both the pad frame data and frame data 15 available from the SelectMAP internal RAM memory in the Actel To read out a formatted version of the frame data type the commands in Table 6 5 rcu sh 0xb4d4 f 502 o framefile hex Write binary data to a file View the file framefile hex Table 6 5 Commands for reading out formatted frame data actel_usermanual doc Johan Alme amp Ketil Raed usermanual 21 25 6 3 Architecture of External Flash Device Configuration pointer Point space Each pointer is 4 bytes 2 word Scrubbing pointer
Download Pdf Manuals
Related Search
Related Contents
PDF-Version - FB IKS - Hochschule Merseburg Pioneer SE-DIR800C Headphones User Manual Copyright © All rights reserved.
Failed to retrieve file