140 likes | 308 Vues
A presentation on my part time MSc research that aims to lay foundation for automating gateware detection. Shanly Rajan Embedded Systems Engineer, SKA SA Masters Student, UCT SKA SA Post-graduate Bursary Conference 1 st DECEMBER 2010. Automated Gateware Discovery Using Open Firmware.
E N D
A presentation on my part time MSc research that aims to lay foundation for automating gateware detection. ShanlyRajan Embedded Systems Engineer, SKA SA Masters Student, UCT SKA SA Post-graduate Bursary Conference 1st DECEMBER 2010 Automated Gateware DiscoveryUsingOpen Firmware
Modular Hardware F P G A RHINO ROACH (Reconfigurable Hardware Interface for computiNg and radiO) (Reconfigurable Open Architecture Computing Hardware)
What is an FPGA? • FPGAs are programmable logic • elements – bread-boards on a chip • that can have their circuits reconfigured • to perform specific tasks very efficiently • FPGAs can be reconfigured • many times with different function • FPGA needs to be programmed with • hardware logic to make it meaningful
Modular Gateware G A T E W A R E • Each gateware design implementation/instrument requires software support • Changing personalities on FPGA require software to be written each time • Investigation on a mechanism that facilitates the process of gateware detection
Recent OS for FPGAs Unified HW/SW OS for PRFPGA systems • VPOS • ReconOS • FDT for FreeBSD • FDT for ROACH OS for Reconfigurable Embedded Platforms • BORPH OS • GATOS • FOCA OF Research Issues in OS for reconfigurable computing 1994 Virtual Hardware Operating System for Xilinx XC6002
Open Firmware • Open Firmware : Hardware Independent Boot Code • Boot Time Drivers for testing machine hardware • Building Device Trees which OS later uses • Device Tree : Data Structure that holds information about the set of devices attached to the system, including permanently installed devices and plug-in devices, as described by an Open Firmware. • A FDT: • Data structure for describing hardware • Passed to kernel at boot-time • Alternative to hard-coded platform details
Implementation Choices Hardware Technology CPU Open Firmware ROACH Power PC Bootloader: Uboot Denx Linux Kernel (Supported bootloader and kernels)
Research Design U-boot Open Firmware Device Drivers Pluggable Peripherals Device Tree Linux Kernel Traditional Method Can be treated Add Me? Can be represented Gateware Images Device Drivers Device Database Extension
OF Device Tree Model root • Tree with nodes & properties • Nodes give structure • Properties add detail platform spi bridge Drivers registered against bus types uart i2c bus temp platform_bus_type pci bus i2c_bus_type ethernet pci_bus_type
Open Firmware Implementation Gateware Implementations Uboot OF Bootloader Linux OF root { ……………….. Ethernet Serial Data Capture ........……….. ……………… ……………… } DEVICE DRIVER Serial UART driver Ethernet driver Sound driver OF Client Interface Calls Bit stream + Meta-information file dts dtb DEVICE TREE EXTENSION
FPGA Serial UART example SERIAL DEVICE DEVICE DRIVER Uartlite Serial bit Uartlite Driver OPERATES FPGAV5 : serial@d0010000{ device_type = "serial"; compatible = "xlnx,opb-uartlite-1.00.b"; reg = <0xd0010000 10000>; current-speed = <115200>; clock-frequency = <66666666>; xlnx,data-bits = <8>; xlnx,odd-parity = <0>; xlnx,use-parity = <0>; }; DESCRIPTION INVOKES MATCH EXTENDING DEVICE TREES
Treating katADC as a soundcard • Current Status Aiming to record and playback ADC data captured into BRAMS with a modified sound device driver and utilize sound analysis tools for visualization and playback. • Future Work • A mkfdt utility that converts FPGA bit stream and meta information into the required flattened device tree format. • Hot Pluggability • Adding device drivers specific to radio astronomy.
Conclusion • Open Firmware • U-boot Open Firmware • OF design and implementation for ROACH • Once fully implemented can be integrated in meerKAT digital backend software which leads to an improved performance system. ALTERNATIVE APPROACH CONSIDERED (EXTENDING DEVICE TREES)
q Questions ? ? ? ? ? ? ? ? email : shanly.rajan@ska.ac.za