15.08.2013 Views

DESIGN OF A CUSTOM ASIC INCORPORATING CAN™ AND 1 ...

DESIGN OF A CUSTOM ASIC INCORPORATING CAN™ AND 1 ...

DESIGN OF A CUSTOM ASIC INCORPORATING CAN™ AND 1 ...

SHOW MORE
SHOW LESS

Create successful ePaper yourself

Turn your PDF publications into a flip-book with our unique Google optimized e-Paper software.

5.3 CAN (Controller Area Network) FPGA Implementation<br />

For the FPGA implementation of the CAN Controller, the Bosch VHDL Reference System<br />

was used as a guide and verification test tool. Some of the features incorporated into the design<br />

are:<br />

Implementation of the Basic CAN specification.<br />

Receiving and transmitting of 11 and 29-bit identifiers.<br />

Programmable baud rate prescaler (up to 1/256).<br />

Up to 1 Mbit/sec speeds of operation.<br />

Message based filtering and addressing.<br />

Non-Destructive bitwise arbitration (CSMA/CA).<br />

Readable Error Counters.<br />

Maskable Error and Status Interrupts.<br />

Figure 5.13 contains a block diagram of a CAN Controller showing only the major<br />

blocks. It is designed to be memory-mapped into any system and is based on the Motorola<br />

CAN (MCAN) Module [95 – 97]. All hardware modules necessary to implement the CAN<br />

Transfer Layer (Bit Stream Processor and Bit Timing Logic) are included, representing the<br />

kernel of the CAN bus protocol as defined by Bosch GmbH, the originators of the CAN<br />

specification. From Figure 5.13, the hardware modules are defined as follows:<br />

IML – The Interface Management Logic unit interprets the commands from the CPU,<br />

controls allocation of both transmit and receive buffers, and supplies interrupts and status<br />

information to the CPU via the Controller Interface Logic (CIL) Unit (See Figure 5.14).<br />

139

Hooray! Your file is uploaded and ready to be published.

Saved successfully!

Ooh no, something went wrong!