Download presentation
Presentation is loading. Please wait.
Published byLillian Blair Modified over 8 years ago
1
Development and Implementation of Real-time Distributed Network with the CAN Protocol Thesis Defense Walt Ford Thursday, November 10, 2005
2
Overview Time Scales, briefly CAN Overview Platforms Used CAN Resource Manager for QNX CAN Core for GBA-Xport Conclusion
3
Approaches control with a new paradigm Evaluates and classifies bus activity Higher bus throughput Time Scales, briefly R hZhZ P ab H0H0 t Time Scales So Far
4
Physical Real-Time Systems ComputerMotor Sensor Sensor… System Nodes System Communication
5
Why CAN? Real-time Fast enough for control Flexible Existing technology Existing testing methods hZhZ H0H0
6
Developed in the 80s by Bosch GmbH For automotive applications Standardized by ISO in 1993 CAN History CAN Hi CAN Lo
7
The CAN Protocol No specified medium Inherent prioritization Guaranteed latency Message based protocol Robust protocol DominantRecessive
8
QNX RTOS Real-time Operating System Microkernel Message Passing Resource Managers Microkernel File System Serial Driver Process Manager Application CAN Driver Messages
9
GBA 16.78 MHz ARM7 Processor Z80 Processor 240x160 pixel Display Convenient User Input
10
Xport Created by CharmedLabs Interfaces with internal bus FPGA and Flash memory Supports various peripherals FPGA Flash
11
XRC and Other Devices More peripherals Code libraries OpenCores.org CAN Controller Core MCP2551 CAN transceiver
12
QNX CAN Resource Manager ARCOM AIM104-CAN card –SJA1000 CAN controller –Adapted to ISA Can4linux –Multiple CAN controllers –Open source
13
SJA1000 access functions Connect and I/O functions Interrupt handler Resource manager QNX Resource Manager User Connect functions I/O functions Resource Manager Low-level SJA1000 Access Functions Arcom CAN Card Processing threads ISR
14
QNX Results Can4qnx API –Well documented –Easily ported to other SJA1000 devices Several QNX Development Environments Familiarity with QNX RTOS
15
GBA-Xport-CAN Core Interface GBA bus CAN Core bus Interface Additional elements Transceiver GBA FPGA Decoder Logic Interface OpenCores.org CAN Core Transceiver CAN bus RXTX 8051 Style Bus Address Data Out Data In Rd Wr GBA’s 16 bit multiplexed data/address bus
16
GBA Bus Structure Multiplexed to support legacy cartridges Primary module from CharmedLabs –Address –Rd –Wr –CartData –DataWr
17
8051 Bus Data and address share the bus Address latch Rd Wr
18
GBA-CAN Core Interface idle addr1 rwst addr2 Is enable high? No Yes Is Rd or Wr low? No Yes
19
GBA-CAN Core Interface 8 8 8 8 8 Rd Wr gaterw Addr[7:0] CartData gateaddr DataRd can_rd can_wr can_io AND MUX TRI-BUF INV can_ale Primary Module CAN Core
20
Additional functionality CAN Transceiver CAN Core controller class in C++ Interrupts HW Reset CAN CorePower CAN bus
21
Final Configuration
22
Other Progress Optical encoder for the Xport Test code for all projects Project documentation Base configuration for EGR5332 lab Lab support
23
Thesis Results “Can4qnx” code libraries in C –Resource Manager –ISR –SJA1000 Low-level Access Functions “CAN” module interface in Verilog “CCanCore” controller class in C++ Both compatible with standard CAN devices Real-time testbed for the Time Scales NSF research
24
Concluded
Similar presentations
© 2024 SlidePlayer.com Inc.
All rights reserved.