OpenCores

* GECKO3 SoC co-design environment

Details

Name: gecko3
Created: Sep 23, 2008
Updated: Mar 16, 2012
SVN Updated: Apr 20, 2010
SVN: Browse
Latest version: download (might take a bit to start...)
Statistics: View
Bugs: 1 reported / 1 solved
Star3you like it: star it!

Other project properties

Category:System on Chip
Language:VHDL
Development status:Stable
Additional info:Design done, FPGA proven
WishBone compliant: Yes
WishBone version: n/a
License: Others

Description

The GECKO system is a general purpose hardware/software co-design environment for real-time information processing and/or system-on-chip (SoC) solutions. The GECKO system supports a new design methodology for system-on-chips, which necessitates co-design of software, fast hardware and dedicated real-time signal processing hardware.

This is now the third generation of these boards, so the current project is called GECKO3.

GECKO3main HPC stack

GECKO3EDU

All GECKO3 system components can be stacked together, as they all have a common backbone bus connector and all have the size of a credit card.

Information about the whole Project, all related modules, software support, tutorials and much more can be found on the project wiki:
labs.ti.bfh.ch/gecko

Get the nice GECKO3 project leaflet in pdf format with all important information about our project.

GECKO3 Modules

The GECKO system comprises hardware modules that can be readily interfaced. The GECKO3main module is the main experimental platform, offering the necessary computing power for processing intensive real-time algorithms as well as the necessary flexibility for control intensive software tasks.

Different GECKO3 modules are available to adapt the GECKO3main to the needs of different applications. An optional board, the GECKO3interface, houses a 160 x 128 pixel graphical color OLED display and a keyboard.

The autonomous GECKO3EDU robot is a composition of different modules with sensors, motors and mechanical housing. It is used for educational purposes. One of its modules, the GECKO3power board, provides the necessary power supply and, in addition, houses H-bridges to control the robot‘s motors, on-board ultrasonic sensor for measuring distances to obstacles and line sensors for line-follower applications. The GECKO3 robot is the mechanical vehicle for the robot with 2 or 4 small motors and a 3900 mAh Li-Ion battery pack.

GECKO3sensors
For autonomous robots, various sensor capabilities are crucial. The GECKO3sensors board therefore houses a variety of sensors like two-dimensional magnetic field sensor for compass application, a two-dimensional acceleration sensor, digital video camera for image processing as well as a bluetooth wireless communication device.

To support autonomous navigation in outdoor environments, the robots can use the GECKO3gps module to quickly add a high sensitivity GPS receiver with an on-board antenna. The module is GALILEO aware.

GECKO3main

The features of the Gecko3main board include:

  • FPGA with 1.5Mio. to 4Mio. gates (Xilinx Spartan3)
  • 128 Mbyte DDR SDRAM and 32Mbyte NOR Flash (Enough to support Linux)
  • USB 2.0 interface for configuration and data transfer
  • 100 Mbit/s Ethernet interface
  • Small, as size range of a credit card (85 x 54,5 mm)
  • Fully Compatible with IP-Cores from: Opencores.org, LEON3 (GRLIB) and Xilinx EDK


GECKO3main bottom GECKO3main top

Extensibility, Scalability
The GECKO3main includes fully populated GECKO3 system bus connectors. The module can be stacked with any other GECKO3 module and also with other GECKO3main modules. We provide a fast and collision free development environment because none of the I/O Pins on the System Bus are shared with on-board peripherals.

USB 2.0 Communication and FPGA Configuration
Matlab and Labview can access the GECKO3main through the VISA API (Virtual Instrument Software Architecture) using the Instrument Control Toolbox in Matlab. The VISA API can also be used from other environments calling Windows DLLs. On Linux you can use normal file I/O with the USB-TMC driver instead of the proprietary VISA driver. The USBTMC Driver is included in every Linux Kernel >2.6.28, and you can also compile it yourself for older kernels. We use this system not only to configure the FPGA during development and for data communication, but also to configure the FPGA in stand-alone mode.
GECKO3COM, USBTMC for FPGA commu

Project license

cc-license All parts of this project (including text, photograph and any other original works), unless otherwise noted is licensed under a Creative Commons License (by-nc-sa)

For more information check out the License page in our wiki.