Documentation
 Datasheet 
Application Notes D68HCXX development boards Development Tools Products Summary
DF6808

8-bit FAST Microcontrollers Family


The DF6808 is a advanced 8-bit MCU IP Core with highly sophisticated, on chip peripheral capabilities. The DF6808 soft core is binary-compatible with the industry standard Motorola 68HC08 8-bit microcontroller and can achieve a performance 45-100 million instructions per second.
The DF6808 has FAST architecture that is 3.2 times faster compared to original implementation. The Core in standard configuration has integrated on chip major peripheral functions.
The DF6808 Microcontroller Core contains full-duplex UART- Asynchronous Serial Communication Interface (SCI), and the Synchronous Serial Peripheral Interface (SPI).
The main 16-bit, free-running timer system has two input capture lines, and two output-compare lines.
Self-monitoring circuitry is included on-chip to protect against system errors. A computer operating properly (COP) watchdog system protects against software failures. An illegal opcode detection circuit provides a non-maskable interrupt if illegal opcode is detected.
Two software-controlled power-saving modes, WAIT and STOP, are available to conserve additional power. These modes make the DF6808 IP Core especially attractive for automotive and battery-driven applications.
DF6808 is fully customizable, which means it is delivered in the exact configuration to meet users’ requirements. There is no need to pay extra for not used features and wasted silicon. It includes fully automated testbench with complete set of tests allowing easy package validation at each stage of SoC design flow.


Each DCD's DF68XX Core has built in support for DCD Hardware Debug System called DoCDTM. It's a real-time hardware debugger provides debugging capability of a whole System on Chip (SoC).
In contrast to other on-chip debuggers DoCDTM provides non-intrusive debugging of running application. It can halt, run, step into or skip an instruction, read/write any contents of microcontroller including all registers, SFRs including user defined peripherals, data and program memories. More details about DCD on Chip Debugger...




CPU Features

Peripherals

  • FAST architecture, 3.2 times faster than the original implementation
  • Software compatible with industry standard 68HC08
  • Configurable Harvard or Von Neumann architectures
  • 11 times faster multiplication
  • 64 bytes of System Function Registers space (SFRs)
  • Up to 64K bytes of Data Memory
  • Up to 64K bytes of Code Memory
  • De-multiplexed Address/Data Bus to allow easy memory connection
  • Two power saving modes: STOP, WAI
  • Ready pin allows Core to operate with slow program and data memories.
  • Fully synthesizable
  • Static synchronous design
  • No internal reset generator or gated clock
  • Positive edge clocking and no internal tri-states
  • Scan test ready
  • 800 MHz of virtual clock frequency compared to original implementation

Design Features

  • One global system clock
  • Synchronous reset
  • All asynchronous input signals are synchronized before internal use
  • Synchronous logic without microcode

Configuration

The following parameters of the DF6808 core can be easy adjusted to requirements of dedicated application and technology. Configuration of the core can be prepared by effortless changing appropriate constants in package file. There is no need to change any parts of the code.

DoCDTM debug unit
  • used
  • unused
Memories type
  • synchronous
  • asynchronous
Power saving STOP Mode
  • used
  • unused

Besides mentioned above parameters all available peripherals can be excluded from the core by changing appropriate constants in package file.
  • DoCDTM debug unit
    • Processor execution control
    • Read-write all processor contents
    • Hardware execution breakpoints
    • Three wire communication interface
  • Four 8-bit I/O Ports
  • Extended Interrupt Controller
    • 7 interrupt sources
    • 7 priority levels
  • Main16-bit timer/counter system
    • 16 bit free running counter
    • Timer clocked by internal source
  • 16-bit Compare/Capture Unit
    • Two independent input-capture functions
    • Two output-compare channels
    • Events capturing
    • Pulses generation
    • Digital signals generation
    • Gated timers
    • Sophisticated comparator
    • Pulse width modulation
    • Pulse width measuring
  • Full-duplex UART - SCI
    • Standard Non-return to Zero format (NRZ)
    • 8 or 9 bit data transfer
    • Integrated BAUD Rate generator
    • Enhanced receiver data sampling technique
    • Noise, Overrun and Framing errors detection
    • IDLE and BREAK characters generation
    • Wake-up block to recognize UART wake-up from IDLE
    • Three SCI Related interrupts
  • SPI – Master and Slave Serial Peripheral Interface
    • Supports speeds up ¼ of system clock
      • Mode fault error
      • Write collision error
    • Software selectable polarity and phase of serial clock SCK
    • System errors detection
    • Allows operation from a wide range of system clock frequencies
    • Interrupt generation


Symbol

 clk
 rst
halt 
 docddatai
 clkdocd
docddatao 
docdclk 
 ss
mosi 
miso 
sck 
sso (7:0) 
 ready
 prgdata (7:0)
 datai (7:0)
 ufrdatai (7:0)
prgaddr (15:0) 
prgoe 
datao (7:0) 
addr (15:0) 
ramwe 
ramoe 
ufraddr (5:0) 
ufrwe 
ufroe 
 irq
 cap2
 cap1
cmp1 
cmp2 
 portai (7:0)
 portbi (7:0)
 portci (7:0)
 portdi (7:0)
portao (7:0) 
portbo (7:0) 
portco (7:0) 
portdo (7:0) 
ddra (7:0) 
ddrb (7:0) 
ddrc (7:0) 
ddrd (7:0) 
 rxd
txd 

Pins description

PinTypeDescription
clkinputGlobal clock
rstinputGlobal reset
docddataiinputDoCDTM serial data input
clkdocdinputClock signal to DoCDTM On chip Debugger module. This separate clock line allow DoCDTM to operate during the SLEEP mode (major clock CLK is stopped).
ssinputSPI slave select
readyinputREADY pin allows CPU to operate with slow program and data memories. HIGH state on READY pin drives CPU to the WAIT state.
prgdata (7:0)inputProgram memory data bus input. (used in Harvard architectue only)
datai (7:0)inputData/Program memory data bus input
ufrdatai (7:0)inputExternal UFR registers data bus input
irqinputExternal interrupt request input
cap2inputInput capture channel 2 input
cap1inputInput capture channel 1 input
portai (7:0)inputPort A input
portbi (7:0)inputPort B input
portci (7:0)inputPort C input
portdi (7:0)inputPort D input
rxdinputSCI receiver data input
haltoutputHalt clock system during STOP Instruction
docddataooutputDoCDTM serial data output
docdclkoutputDoCDTM serial data clock line
mosioutputSPI Master Output - Slave input
misooutputSPI Master input - Slave output
sckoutputSPI clock line
sso (7:0)outputSlave Select outputs
prgaddr (15:0)outputProgram memory address bus. (used in Harvard architecture only)
prgoeoutputProgram memory output enable.
datao (7:0)outputData memory and External UFR registers output data bus
addr (15:0)outputData memory address bus
ramweoutputData memory write enable
ramoeoutputData memory output enable
ufraddr (5:0)outputExternal UFR registers address bus
ufrweoutputExternal UFR registers write enable
ufroeoutputExternal UFR registers output enable
cmp1outputOutput compare channel 1 output
cmp2outputOutput compare channel 2 output
portao (7:0)outputPort A output
portbo (7:0)outputPort B output
portco (7:0)outputPort C output
portdo (7:0)outputPort D output
ddra (7:0)outputPort A data direction control
ddrb (7:0)outputPort B data direction control
ddrc (7:0)outputPort C data direction control
ddrd (7:0)outputPort D data direction control
txdoutputSCI transmitter data output

Block diagram

Opcode Decoder
Control Unit
halt
DoCDTM
docddatai
docddatao
docdclk
clkdocd
SPI Unit
mosi
miso
ss
sck
sso (7:0)
ALU
Bus Controller
ready
prgdata (7:0)
prgaddr (15:0)
prgoe
datai (7:0)
datao (7:0)
addr (15:0)
ramwe
ramoe
ufrdatai (7:0)
ufraddr (5:0)
ufrwe
ufroe
Interrupt Controller
irq
Watchdog Timer
Timer with Compare Capture
cap2
cmp1
cmp2
cap1
IOPorts
portai (7:0)
portbi (7:0)
portci (7:0)
portdi (7:0)
portao (7:0)
portbo (7:0)
portco (7:0)
portdo (7:0)
ddra (7:0)
ddrb (7:0)
ddrc (7:0)
ddrd (7:0)
SCI
rxd
txd
clk
rst

Units

Opcode Decoder

It performs an instruction opcode decoding and the control functions for all other blocks.

Control Unit

Control unit prforms the core synchronization and data flow control. This module manages execution of all instructions. The STOP instruction and wakes-up the processor from the STOP mode.

DoCDTM

DoCDTM Debug Unit – it’s a real-time hardware debugger provides debugging capability of a whole SoC system. In contrast to other on-chip debuggers DoCD™ provides non-intrusive debugging of running application. It can halt, run, step into or skip an instruction, read/write any contents of microcontroller including all registers, internal, external, program memories, all SFRs including user defined peripherals. Hardware breakpoints can be set and controlled on program memory, internal and external data memories, as well as on SFRs. Hardware breakpoint is executed if any write/read occurred at particular address with certain data pattern or without pattern. The DoCDTM system includes three-wire interface and complete set of tools to communicate and work with core in real time debugging. It is built as scalable unit and some features can be turned off to save silicon and reduce power consumption. A special care on power consumption has been taken, and when debugger is not used it is automatically switched in power save mode. Finally whole debugger is turned off when debug option is no longer used.
The separate DoCDTM clock line allow debugger to operate while the SLEEP mode (major clock line CLK is stopped).

SPI Unit

It’s a fully configurable master/slave Serial Peripheral Interface, which allows user to configure polarity and phase of serial clock signal SCK. It allows the microcontroller to communicate with serial peripheral devices. It is also capable of interprocessor communications in a multi-master system. A serial clock line (SCK) synchronizes shifting and sampling of the information on the two independent serial data lines. SPI data are simultaneously transmitted and received. SPI system is flexible enough to interface directly with numerous standard product peripherals from several manufacturers. Data rates as high as CLK/4. Clock control logic allows a selection of clock polarity and a choice of two fundamentally different clocking protocols to accommodate most available synchronous serial peripheral devices. When the SPI is configured as a master, software selects one of four different bit rates for the serial clock. Error-detection logic is included to support interprocessor communications. A write-collision detector indicates when an attempt is made to write data to the serial shift register while a transfer is in progress. A multiple-master mode-fault detector automatically disables SPI output drivers if more than one SPI devices simultaneously attempts to become bus master.

ALU

Arithmetic Logic Unit performs the arithmetic and logic operations during execution of an instruction. It contains accumulator (A), Condition Code Register (CCREG), Index registers (H:X), and related logic such as arithmetic unit, logic unit, multiplier and divider.

Bus Controller

Program Memory, Data Memory & SFR's (Special Function Register) interface controls access into the program and data memories and special registers. It contains Program Counter (PC), Stack Pointer (SP) register, and related logic.

Interrupt Controller

The extended Interrupt Controller has implemented 7-level interrupt priority control. The interrupt requests may come from external pin (IRQ) as well as from particular peripherals. The peripheral systems generate maskable interrupts, which are recognized only if the global interrupt mask bit (I) in the CCR is cleared. Maskable interrupts are prioritized according to default arrangement established during reset. When interrupt condition occurs, an interrupt status flag is set to indicate the condition.

Watchdog Timer

The Watchdog Timer consist of free running timer CLK/213, plus control logic. The Watchdog Timer can be enabled by software by writing '1' to the WDOG Bit in MISC ($0C) register. Once enabled the WDT timer cannot be disabled by software. In addition the WDOG bit acts as a reset mechanism for the WDT Timer. Writing '1' to the WDOG Bit clears WDT counter and inhibits Watchdog timeout.

Timer with Compare Capture

The programmable timer is based on free-running 16-bit counter, plus input capture/output compare circuitry. The timer can be used for many purposes including measuring pulse length of two input signals and generating two output signals. The timer has 16-bit architecture, hence each specific functional segment is represented by two 8-bit registers. These registers contains the high and low byte of that functional block. Accessing the low byte of a specific timer function allows full control of that function, however, an access of the high byte inhibits that specific timer function until the byte is also accessed. Each of the input-capture channel has its own 16-bit time capture latch (input-capture regis-ter) and each of the output-compare channel has its own 16-bit compare register. Additional control bits permit software to control the edge(s) that trigger each input-capture func-tion and the automatic actions that result from output-compare functions. Although hardwired logic is included to automate many timer ac-tivities, this timer architecture is essentially a software-oriented system. This structure is easily adaptable to a very wide range of appli-cations although it is not as efficient as dedi-cated hardware for some specific timing applications.

IOPorts

All ports are 8-bit general-purpose bi-directional I/O system. The PORTA, PORTB, PORTC, PORTD data registers have their corresponding data direction registers DDRA, DDRB, DDRC, DDRD to control ports data flow. It assures that all ports have full I/O selectable registers. Writes to any ports pins cause data to be stored in the data registers. If any port pins are configured as output then data registers are driven out of those pins. Reads from port pins configured as input causes that input pin is read. If port pins is configured as output, during read data register is read.
Writes to any ports pins not configured as outputs do not cause data to be driven out of those pins, but the data is stored in the output registers. Thus, if the pins later become outputs, the last data written to port will be driven out the port pins.

SCI

The SCI is a full-duplex UART type asynchronous system, using standard non return to zero (NRZ) format : 1 start bit, 8 or 9 data bits and a 1 stop bit. The Core resynchronizes the receiver bit clock on all one to zero transitions in the bit stream. Therefore differences in baud rate between the sending device and the SCI are not as likely to cause reception errors. Three logic samples are taken near the middle of data bit time, and majority logic decides the sense for the bit. For the start and stop bits seven logic samples are taken. Even if noise causes one of these samples to be incorrect, the bit will still be received correctly. The receiver also has the ability to enter a temporary standby mode (called receiver wakeup) to ignore messages intended for a different receiver. Logic automatically wakes up the receiver in time to see the first character of the next message. This wakeup feature greatly reduces CPU overhead in multidrop SCI networks. The SCI transmitter can produce queued characters of idle (whole characters of all logic 1) and break (whole characters of all logic 0). In addition to the usual transmit data register empty (TDRE) status flag, this SCI also provides a transmit complete (TC) indication that can be used in applications with a modem.

Performance


Each core has been tested in variety of FPGA and ASIC technologies. Its implementation's results are summarized below.

ImplementationSpeed
grade
Area
[LC]
Frequency
[MHz]
APEX20KC-7253148
CYCLONE-6263561
CYCLONE II-6263565
STRATIX-5213665
STRATIX II-3212496
STRATIX GX-5263666

DF6808 implementation results for ALTERA devices. All features have been included.

ImplementationSpeed
grade
Area
[Slices]
Frequency
[MHz]
SPARTAN-IIE-7170136
SPARTAN-III-5169944
SPARTAN-IIIE-4171635
VIRTEX-E-8168937
VIRTEX-II-6169668
VIRTEX-II pro-7167277
VIRTEX-IV-12168687

DF6808 implementation results for XILINX devices. The CPU features and Peripherals have been included.

ImplementationSpeed
grade
Area
[LUT/PFU]
Frequency
[MHz]
EC-52857/65145
ECP-52857/65145
XP-52857/65143

DF6808 implementation results for LATTICE devices. The CPU features and Peripherals have been included.


Family summary

FamilyIP CoreArchitecture
type
Memory
space
DoCDTMUART (SCI)SPI M/SIO PortsWatchdog
Timer
TimerCompare /
Capture
Pulse
accumulator
READY
pin
Chip
Selects
Gatecount
HC05, HC08DF6805fast64k++-4+12/2-+-7000
-DF6808fast64k++-4+12/2-+-8300
-D68HC05legacy64k+++4+11/1----
-D68HC08legacy64K+++4+12/1---10000
HC11DF6811Efast64k+++5+15/4++-12000
-DF6811Ffast64k+++7+15/4++-14000
-DF6811Kfast1M+++10+313/6++-21000
-D68HC11Elegacy64k+++5+15/4+--13000
-D68HC11Klegacy1M++110+313/6+-421000
-D68HC11Flegacy64k+++7+15/4--413500
6802, 6803DF6802fast64k+----------
-DF6803fast64k+++4-1+----
-D6802legacy64k+---------3600
-D6803legacy64k+++4-1+---6000


The main features of each D68XX and DF68XX family member have been summarized in table above. It gives a brief member characterization to help selection of the most suitable IP Core for application. User can specify its own peripheral set (including listed above and the others) and request the core modifications.