Designing an Ubiquitous Computing Development Kit · 2004-10-05 · EUROMICRO - DSD 2004 - RENNES...

Preview:

Citation preview

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Dr. Michael Freeman

AMADEUS Research CentreDepartment of Computer Science

University of York (UK)

Designing an Ubiquitous Computing Development Kit

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Introduction• UcDK aims:

– To develop a range of simple (use/construct), cheap development boards to allow investigation into ubiquitous computing scenarios.

– Fast prototyping of ubiquitous computing applications.• Minimising software and hardware development times.

– Two stage design flow:• Initial proto-type : micro-controller based systems• Final : SOC FPGA based systems

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

UcDK• An ubiquitous computing node

typically contains:– Communications– Processing– Interfacing

• These requirements are separated and performed in specialized modules.– Information passed between modules

using serial data links– Hardware and software re-use

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

UcDK• Communications modules:

– Micro-controller 4K/128– Radio (433MHz): 19.2Kbps– Infra-red: 9600 bps– Features

• I2C port• RTC• ADC• Serial ports• GPIO (IRQ, CNT)

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

UcDK• PC communicates to

base node via serial port or Ethernet

• Radio packet Tx / Rx to Slave nodes

• Each slave node can have Sub nodes connected to it via IR link

• Simple sense before TX, ACK protocol + CRC

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

UcDK• Processing modules:

– Data logging• EEPROM: 192Kb

– Digital IO• CPLD: XC9572• I2C: PCF8574

– Analogue IO• I2C: PCF8591

– Serial IO• Four RS232 serial ports

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

UcDK• Interfacing modules:

– I2C expansion board• GPIO, ADC, DAC

– Open collector driver– Opto-isolator– Stepper/DC motor– Relay, Triac– Power supply

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Example 1

• Light controller : single module example

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Example 2

• Cooker hob : two module example

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Example 3• Fridge :

three module example

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Demo 1

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

UcDK

• FPGA cores– Wishbone bus– Communications

• Infra-red, Radio controller– Processing

• Picoblaze• Minimal CISC processor (MCP)

– Interface• UART, SPI, Multi-master I2C

• Micro-controller code re-use where possible.

EUROMICRO - DSD 2004 - RENNES

Michael FreemanMinimal CISC Processor Architecture for FGPAs

Existing 8051 Cores• 8051 Micro-controller core :

– DR8051 : VIRTEX-II 1080 slices 87MHz– Free8051 : SPARTAN-II 1605 slices 14MHz– R8051 : VIRTEX-II 1861 slices 49MHz– Org. 8051 : SPARTAN-II 1250 slices

• RISC Emulation– PB8051 : VIRTEX-II 313 slices 113MHz

(PicoBlaze : VIRTEX-II 84 slices)

EUROMICRO - DSD 2004 - RENNES

Michael FreemanMinimal CISC Processor Architecture for FGPAs

Results• All systems have one wishbone IO port and are

synthesised for our Virtex II development board:– Picoblaze

• Number Slices: 114 Maximum Frequency: 45.323MHz– MCP : internal iMem, picoBlaze instruction set

• Number Slices: 120 Maximum Frequency: 68.8MHz– MCP : external iMem, picoBlaze instruction set

• Number Slices: 123 Maximum Frequency: 80.4MHz– MCP : internal iMem, 8051 instruction set

• Number Slices: 134 Maximum Frequency: 76.4MHz

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

UcDK• Possible systems

– Hardware / software divisions

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Conclusions• The UcDK has been proven to allow fast

prototyping of ubiquitous computing applications and to minimise software and hardware development times.

EUROMICRO - DSD 2004 - RENNES

Michael FreemanDesigning an Ubiquitous Computing Development Kit

Future Work• Installation of micro-controller based systems in

the responsive home at the University of York.• Development and expansion of micro-controller

modules:– IrDa communications module

• Development and expansion of FPGA cores– Investigation into the performance of different SOC

architectures

Recommended