260 likes | 346 Views
Instrument Interface FPGA. Yongmyung Seo School of Space Research Kyung Hee University. TRIO-CINEMA 1 KHU, 08/10/2010. Agenda. Introduction I2C & Register module Test with ACTEL DEV board & test with IIB Current work status & Future plan. TRIO-CINEMA 2 KHU, 08/10/2010. Introduction.
E N D
Instrument Interface FPGA Yongmyung Seo School of Space ResearchKyung Hee University TRIO-CINEMA 1 KHU, 08/10/2010
Agenda • Introduction • I2C & Register module • Test with ACTEL DEV board & test with IIB • Current work status & Future plan TRIO-CINEMA 2 KHU, 08/10/2010
Introduction • Introduction - Instrument Interface FPGA (IIF) serves as a bridge between the Pumpkin Processor and various other components - acts as a data buffer and command interface for MAGIC and STEIN instruments - acts as a buffer and Framer for the Telemetry system - IIF communicates with the Pumpkin Processor through I2C and SPI interface TRIO-CINEMA 3 KHU, 08/10/2010
I2C & Register module • I2C interface - serial communication data transfer bus - communicate with CPU and transfer data to be read and written to 25 registers • Registers - 10 read-able and write-able, 11 read only and 2 write only registers out of 25 registers - 20 of 8 bit registers, 2 of 16 bit registers, 2 of 24bit registers and 1 of 32 bit registers out of 25 registers • Module interface - once one of register is read or written as long as a transaction is valid, it sends data to modules or receives data from modules TRIO-CINEMA 4 KHU, 08/10/2010
I2C & Register module TRIO-CINEMA 5 KHU, 08/10/2010
I2C & Register module • Example of data transfer through I2C TRIO-CINEMA 6 KHU, 08/10/2010
I2C & Register module MAGIC_ready I2C_MAGIC_ready I2C & Register module MAGDATA MAGIC module MAGCMD BOOMARM BOOMDEP BOOMOUT MAGICFLT TRIO-CINEMA 8 KHU, 08/10/2010
Module Interface MAGIC_ready I2C_MAGIC_ready 25 Registers I2C & Register module MAGDATA MAGIC module MAGCMD BOOMARM BOOMDEP BOOMOUT MAGICFLT I2C
I2C & Register module TRIO-CINEMA 10 KHU, 08/10/2010
Test with ACTEL DEV board • Test procedure 1. Test program is coded in C – code work done by Seyoung Yoon, FSW team 2. Compile and build test program MPLAB IDE V8.56 Interface TRIO-CINEMA 11 KHU, 08/10/2010
Test with ACTEL DEV board 3. Program the test code into DS-PIC33 DEV board 4. Program the I2C code into ACTEL DEV board DS-PIC 33 DEV board Commercial ACTEL DEV board TRIO-CINEMA 12 KHU, 08/10/2010
Test with ACTEL DEV board 5. Inter-connect DS-PIC33 DEV board and ACTEL DEV board Inter-connection between DS-PIC33 DEV board and ACTEL DEV board and overall test environment TRIO-CINEMA 13 KHU, 08/10/2010
Test with ACTEL DEV board 6. Send command through RS-232 serial communication terminal Sending command through RS-232 serial communication terminal interface TRIO-CINEMA 14 KHU, 08/10/2010
test with IIB • Test procedure 1. Program the test code into DS-PIC33 DEV board 2. Power up IIB TRIO-CINEMA 15 KHU, 08/10/2010
test with IIB 3. Program the I2C code into IIB and connect with DS-PIC33 DEV board 4. Send command through RS-232 serial communication terminal Inter-connection between DS-PIC33 DEV board and IIB and overall test environment RS-232 serial communication interface TRIO-CINEMA 16 KHU, 08/10/2010
Test result - Read-able & write-able registers Write 1 to a register and read the register value 1 Write 241 to a register and read the register value 241 TRIO-CINEMA 17 KHU, 08/10/2010
Test result- Read only registers If a command is write operation, IIF sends an error bit to CPU Only read operation is available TRIO-CINEMA 18 KHU, 08/10/2010
Test result- write only registers If a command is read operation, IIF sends an error bit to CPU Only write operation is available TRIO-CINEMA 19 KHU, 08/10/2010
Test result - Reset Once reset is done, all register values are reset to all 0 Bug on STEINCMD register It suppose to be 0, but it is 255 TRIO-CINEMA 20 KHU, 08/10/2010
Test result - Read all registers Read all register value operation Still a bug on STEINCMD register It suppose to be 0, but it is 255 TRIO-CINEMA 21 KHU, 08/10/2010
Test result - Write all registers to 1 Write all register value to 1 Data in read-able, write-able and write only registers are changed to 1, and rest of registers still remain with 0 are read only registers Still a bug on STEINCMD register TRIO-CINEMA 22 KHU, 08/10/2010
Test result - Write all registers to 241 Write all register value to 241 Data in read-able, write-able and write only registers are changed to 241, and rest of registers still remain with 0 are read only registers Still a bug on STEINCMD register. However, if I access to individual STEINCOM register, it is ok. It only occurs do accessing all registers, Weird! TRIO-CINEMA 23 KHU, 08/10/2010
Current issues & Future plan • Current work status (coded in VHDL) (works are done in software & tested through simulation , tested in hardware as well) - I2C & Register module is finished - tested in ACTEL DEV board and IIB • Future plan - connect with MAGIC module - go on to telemetry part TRIO-CINEMA 24 KHU, 08/10/2010
Current issues & Future plan • KHU version IIB will be left in Berkeley - Currently FPGA parts work, same test was conducted - LVPS parts for MAGIC is not soldered yet - Which Berkeley IIB would KHU take? One is being tested? One extra proto- type? Or both? TRIO-CINEMA 25 KHU, 08/10/2010
Thank you TRIO-CINEMA 26 KHU, 08/10/2010