260 likes | 348 Views
This project showcases an FPGA Instrument Interface for TRIO-CINEMA at Kyung Hee University, facilitating communication between components. It includes I2C and Register modules, with test procedures using ACTEL DEV board and integration with instruments. The current work status and future plans are detailed.
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