Title: Automated Gateware Discovery Using Open Firmware
1Automated Gateware DiscoveryUsingOpen Firmware
- A presentation on my part time MSc research that
aims to - lay foundation for
- automating gateware detection.
- Presented By
- Shanly Rajan
- Embedded Systems Engineer
- SKA SA
- CASPER WORKSHOP20 AUGUST 2010
2Overview
- Background - OS for FPGAS
- Open Firmware
- U-boot Open Firmware
- Open Firmware design implementation
- Implementation Examples
- Research Status Future Directions
- Conclusion
3Recent OS for FPGAs
Unified HW/SW OS for PRFPGA systems
- VPOS
- ReconOS
- FDT for FreeBSD
- FDT for ROACH
OS for Reconfigurable Embedded Platforms
OF
Research Issues in OS for reconfigurable
computing
1994
Virtual Hardware Operating System for Xilinx
XC6002
4Open 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
5U-boot Open Firmware
- U-boot, the bootloader for the powerpc
architecture in ROACH has built-in Open Firmware
(OF) support - The device-tree layout for u-boot is strongly
inherited from the definition of the Open
Firmware IEEE 1275-1994 device-tree - The observation that gateware implementations on
FPGA can be treated as pluggable peripherals
suggests that it can be represented in the device
tree just like any other physical peripheral - Conventional/Traditional Method Scheme of
loading existing device drivers to operate on
physical peripherals can also be extended to
gateware images as well. - The research facilitates the process of
identifying and operating on gateware images by
extending the exisiting infrastructure of probing
devices in traditional software by using Open
Firmware.
6Terminology
- Open Firmware (OF) Device Tree (DT)
- Device representation exported by Open Firmware
- Flattened Device Tree (FDT)
- Firmware-independent device tree
- Device Tree Compiler (DTC)
- Convert between .dts and .dtb
- Device Tree Source (.dts)
- Device Tree Blob (.dtb)
- Tokenized form used by kernel
- Binding
- Documentation of how the DT describes hardware
7OF Device Tree Model
root
platform
spi
bridge
Drivers registered against bus types
uart
i2c bus
temp
platform_bus_type
pci bus
i2c_bus_type
ethernet
pci_bus_type
8Open Firmware Implementation
Uboot OF Bootloader
Linux OF
Gateware Implementations
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
9Serial UART example
SERIAL DEVICE
DEVICE DRIVER
Uartlite Serial bit
Uartlite Driver
OPERATES
FPGAV5 serial_at_d0010000 device_type
"serial" compatible "xlnx,opb-uartlite-1.00
.b" reg lt0xd0010000 10000gt
current-speed lt115200gt
clock-frequency lt66666666gt
xlnx,data-bits lt8gt xlnx,odd-parity
lt0gt xlnx,use-parity lt0gt
DESCRIPTION
INVOKES MATCH
EXTENDING DEVICE TREES
10Treating 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.
11BORPH or OF FDT ??
Trade - Off
Ease of Use
Performance
Win-Win Approach
12Conclusion
- Recent OS for FPGAS - Background
- Open Firmware
- U-boot Open Firmware
- OF design and implementation for ROACH
- OF implementation examples serial UART
- Current progress Future Directions
ALTERNATIVE APPROACH CONSIDERED (EXTENDING DEVICE
TREES)
13Questions
?
?
?
?
?
?
?
?
email shanly.rajan_at_ska.ac.za