ASIC Datasheet - Digital Core Design

2015
DT8051 IP Core
Tiny Area 8051-compatible Microcontroller v. 4.71
●
COMPANY OVERVIEW
Digital Core Design is a leading IP Core provider and a System-on-Chip design house.
The company was founded in 1999 and since
the very beginning has been focused on IP
Core architecture improvements. Our innovative, silicon proven solutions have been employed by over 300 customers and with more
than 500 hundred licenses sold to companies
like Intel, Siemens, Philips, General Electric,
Sony and Toyota. Based on more than 70 different architectures, starting from serial interfaces to advanced microcontrollers and SoCs,
we’re designing solutions tailored to your
needs.
IP CORE OVERVIEW
The DT8051 is an area optimized, tiny soft
core, of a single-chip 8-bit embedded microcontroller, based on World's fastest and most
popular DP8051 core, available since over 8
years. The DT8051 soft core is 100% binarycompatible with the industry standard 8051 8bit microcontroller. It has a very low gate
count architecture, giving 6 650 ASIC gates for
a complete system, including the DoCD onchip debugger. Dhrystone 2.1 benchmark
program runs exactly 8.1 times faster than
the original 80C51 at the same frequency. The
same C compiler was used for benchmarking
of the core vs. 80C51, with the same settings.
The DT8051 Core has a built-in support for the
2-wire TTAGTM interface - DCD Hardware
Debug System, called DoCDTM. This version of
the debugger is dedicated for applications,
where a number of external pins is limited.
The DT8051 includes also up to eight external
interrupt sources, an advanced Power Management Unit, Timers 0&1, I/O bit addressable
Ports, a full duplex UART and an interface for
external SFR. It is delivered with fully automated test bench and complete set of tests,
allowing easy package validation at each stage
of SoC design flow.
●
●
●
●
●
●
●
●
●
●
●
●
●
●
○ Run, Halt
○ Step into instruction
○ Skip instruction
○
Software compatible with the 8051 industry
standard
Read-write all processor contents
○
○
○
○
○
○
Program Counter (PC)
Program Memory
Internal (direct) Data Memory
Special Function Registers (SFRs)
External Data Memory
Code execution breakpoints
○ two real-time PC breakpoints
○ unlimited number of real-time OPCODE breakpoints
○
Three independent Memory watchpoints
○ SFR, DATA, XDATA
KEY FEATURES
●
Very low gate count, area optimized architecture – 6 650 ASIC gates for a complete system
with DoCD on-chip debugger
8.1 times faster than a standard 8051
7.63 VAX MIPS at 100 MHz
Up to 256 bytes of internal (on-chip) Data
Memory
Up to 64k bytes of internal (on-chip) Program
Memory
Up to 64k bytes of external (off-chip) Program
Memory
Up to 64k bytes of external (off-chip) Data
Memory
De-multiplexed Address/Data Bus to allow
easy connection to memory
Power Management Unit
○
Power management mode
○
Switchback feature
○
Stop mode
Interrupt Controller
○
2 priority levels
○
8 external interrupt sources
○
3 interrupt sources from peripherals
8-bit I/O Port
○
Bit addressable data direction for each line
○
Read/write of single line and 8-bit group
Two 16-bit timer/counters
○
Timers clocked by internal source
○
Auto reload 8-bit timers
○
Externally gated event counters
Full-duplex serial port
○
8-bit asynchronous mode, variable baud
rate
○
9-bit asynchronous mode, variable baud
rate
Interface for additional Special Function Registers
2-wire DoCD™ debug unit
○
Processor execution control
○
●
●
2-wire TTAG communication interface
Fully synthesizable, static synchronous design,
with positive edge clocking and no internal
tri-states
Scan test ready
2
Copyright © 1999-2015 DCD – Digital Core Design. All Rights Reserved.
All trademarks mentioned in this document are the property
of their respective owners.
APPLICATIONS
♦
♦
♦
♦
Low power battery operated devices
Mixed signal systems
Area optimized FPGA/ASIC design
FSM replacements
BENEFITS
♦
♦
♦
♦
The lowest gate count, 8051 compatible architecture
Very low power consumption
Significant
performance
improvement
with respect to the 80C51 device, working
at the same clock frequency (8.1 in terms
of Dhrystone MIPS)
On demand customization
DELIVERABLES
♦
Source code:
● VHDL Source Code or/and
● VERILOG Source Code or/and
● Encrypted, or plain text EDIF
♦
VHDL & VERILOG test bench environment
● Active-HDL automatic simulation macros
● ModelSim automatic simulation macros
● Tests with reference responses
♦
Technical documentation
● Installation notes
● HDL core specification
● Datasheet
♦
♦
♦
Synthesis scripts
Example application
Technical support
● IP Core implementation support
● 3 months maintenance
● Delivery of the IP Core and documentation updates, minor and major versions changes
● Phone & email support
LICENSING
Comprehensible and clearly defined licensing
methods without royalty-per-chip fees make
use of our IP Cores easy and simple.
Single-Site license option – dedicated to small
and middle sized companies, which run their
business in one place.
Multi-Site license option – dedicated to corporate customers, who operate at several locations. The licensed product can be used in
selected company branches.
manufactured chips are unlimited. The license
is royalty-per-chip free. There are no restrictions regarding the time of use.
There are two formats of the delivered IP
Core:
VHDL or Verilog RTL synthesizable source code
called HDL Source code
FPGA EDIF/NGO/NGD/QXP/VQM called Netlist
PINS DESCRIPTION
PIN
clk
rst
port2i[7:0]
prgdatai[7:0]
xdatai[7:0]
TYPE
input
input
input
input
input
amdatai[7:0]
sfrdatai[7:0]
int0
int1
int2
int3
int4
int5
int6
Int7
t0
t1
gate0
gate1
rxdi
ttdi
port2o[7:0]
rgaddr[15:0]
rgdatao[7:0]
prgramwr
ddress[15:0]
xdatao[7:0]
xdataz
xdatawr
xdatard
xprgrd
xprgwr
ramaddr[7:0]
amdatao[7:0]
ramwe
ramoe
sfraddr[6:0]
sfrdatao[7:0]
sfrwe
sfroe
txd
ttck
ttdoen
ttdo
input
input
input
input
input
input
input
input
input
input
input
input
input
input
input
input
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
output
DESCRIPTION
Global clock
Global reset
Port 2 input
Data bus from internal program memory
Data bus from external data/code
memory
Data bus from internal data memory
Data bus from user SFR’s
External interrupt 0
External interrupt 1
External interrupt 2
External interrupt 3
External interrupt 4
External interrupt 5
External interrupt 6
External interrupt 7
Timer 0 input
Timer 1 input
Timer 0 gate input
Timer 1 gate input
Serial receiver input
DoCD data input
Port 2 output
Internal program memory address bus
Data bus for Internal program memory
Internal program memory write
External data/code memory address bus
Data bus for external data/code memory
External XDATA bus ‘Z’ state
External data memory write
External data memory read
External program memory read
External program memory write
RAM address bus
Data bus for internal data memory
Internal data memory write enable
Internal data memory output enable
SFR’s address bus
Data bus for user SFR’s
User SFR’s write enable
User SFR’s output enable
Serial transmitter output
DoCD clock output
DoCD data output enable
DoCD data output
In all cases the number of IP Core instantiations within a project and the number of
3
Copyright © 1999-2015 DCD – Digital Core Design. All Rights Reserved.
All trademarks mentioned in this document are the property
of their respective owners.
UNITS SUMMARY
ALU - Arithmetic Logic Unit - performs the
arithmetic and logic operations, during execution of an instruction. It contains accumulator
(ACC), Program Status Word (PSW), (B) registers
and related logic, like arithmetic unit, logic unit,
multiplier and divider.
Control Unit - It performs the core synchronization and data flow control. This module is directly connected to Opcode Decoder and manages
execution of all microcontroller tasks.
Program Memory Interface - It contains Program Counter (PC) and related logic. It performs
the instructions code fetching. Whole program
memory (FLASH or SRAM type), can be written
by DoCD™ debugger or application can modify
some part of its code - for example, storing
some data which shouldn't volatile.
External Memory Interface - Contains memory
access related registers, like Data Page High
(DPH) and Data Page Low (DPL) registers. It performs the memory addressing and data transfers.
Internal Data Memory Interface - Interface controls access into the internal memory of size up
to 256 bytes. It contains 8-bit Stack Pointer (SP)
register and related logic.
SFR’s Interface - Special Function Register interface, manages communication between CPU
and user specified special registers.
Opcode Decoder - Performs an opcode decoding
instruction and control functions for all other
blocks.
Interrupt Controller - Interrupt Control module
is responsible for the interrupt manage system
for the eight external and internal interrupt
sources. It contains interrupt related registers,
such as Interrupt Enable (IE), Interrupt Priority
(IP), Extended Interrupt Enable (EIE), Extended
Interrupt priority (EIP) and (TCON) registers.
Timers - System timers module. Contains two
16bits configurable timers: Timer 0 (TH0, TL0),
Timer 1 (TH1, TL1) and Timers Mode (TMOD)
registers. In the timer mode, timer registers are
incremented every 12 (or 4) CLK periods, when
appropriate timer is enabled. In the counter
mode, the timer registers are incremented every
falling transition on their corresponding input
pins (T0, T1), if gates are opened (GATE0,
GATE1). T0, T1 input pins are sampled every CLK
period. It can be used as clock source for UARTs.
UART - Universal Asynchronous Receiver &
Transmitter module is full duplex, meaning, it
can transmit and receive concurrently. Includes
Serial Configuration register (SCON), serial receiver and transmitter buffer (SBUF) registers.
Its receiver is double-buffered, so it can commence reception of a second byte before the
previously received byte has been read from the
receive register. Writing to SBUF0 loads the
transmit register, and reading SBUF0, reads a
physically separate receive register. It works in 2
asynchronous modes with variable baud rate,
covering all standard transmission speeds.
Ports - Block contains 8051’s general purpose
I/O ports. Each of port’s pin can be read/write
as a single bit or as an 8-bit bus.
DoCD™ Debug Unit – it is a DoCDTM Debug Unit,
2-wire, low gate count, real-time hardware
debugger, which provides debugging capability
of a whole SoC system. Unlike 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, internal and external program memories
and all SFRs, including user defined peripherals.
Hardware breakpoints control execution of program memory code; hardware watchpoints can
be set and control internal and external data
memories and SFRs. Hardware watchpoints are
executed if any write/read occurs at particular
address, with certain data pattern or without
pattern. Two additional pins (CODERUN and
DEBUGACS) indicate the state of the debugger
and CPU. CODERUN is active, when CPU is executing an instruction. DEBUGACS pin is active,
when any access is performed by DoCDTM debugger. The DoCDTM system includes TTAG 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 by the user, to save silicon and reduce
power consumption. When debugger is not
used, it is automatically switched to power save
mode. Finally, when debug option is no longer
used, whole debugger is turned off.
4
Copyright © 1999-2015 DCD – Digital Core Design. All Rights Reserved.
All trademarks mentioned in this document are the property
of their respective owners.
SYMBOL
port2i(7:0)
prgdatai(7:0)
xdatai(7:0)
ramdatai(7:0)
sfrdatai(7:0)
PERFORMANCE
The following tables give a survey about
the DT8051 and the DoCD on-chip debugger
area and performance, in the most popular
ASIC technologies (all features are included).
Results given for working system with connected SFR IDATA, CODE and XDATA memories.
port2o(7:0)
prgdatao(7:0)
prgaddr(15:0)
prgramwr
xdatao(7:0)
xaddress(15:0)
xdataz
xdatard
xdatawr
xprgrd
xprgwr
ramdatao(7:0)
ramaddr(7:0)
ramoe
ramwe
sfrdatao(7:0)
sfraddr(6:0)
sfroe
sfrwe
int0
int1
int2
int3
int4
int5
int6
int7
t0
gate0
ttdi
ttdo
ttdoen
ttck
Technology /
Speed grade
Area
optimization
[gates]
0.25u area
typical
6 000
0.18u area
typical
5 720
0.09u area
typical
5 600
DT8051 without DoCD debugger
rxd0i
txd0
Technology /
Speed grade
Area
optimization
[gates]
0.25u area
typical
8 150
0.18u area
typical
7 720
0.09u area
typical
7 300
DT8051 with full version2 of DoCD debugger
BLOCK DIAGRAM
xaddress(15:0
xdatai(7:0)
xdatao(7:0)
xdataz
xdatard
xdatawr
xprgrd
xprgwr
External
Memory
Interface
prgaddr(15:0)
prgdatai(7:0)
prgdatao(7:0)
prgramwr
Program
Memory
Interface
I/O Port
Registers
ramaddr(7:0)
ramdatai(7:0)
ramdatao(7:0)
ramoe
ramwe
Internal Data
Memory
Interface
port2(7:0)
t0
t1
gate0
gate1
UART
rxd0i
txd0
Interrupt
Controller
SFR Interface
ALU
clk
rst
DoCD
Debugger
100 MHz
130 MHz
230 MHz
int0
int1
int2
int3
int4
int5
int6
int7
sfraddr(6:0)
sfrdatai(7:0)
sfrdatai(7:0)
sfroe
sfrwe
2- full DoCD version includes processor execution control (run, halt,
reset, step); read-write all processor content (PC, SFRs); read-write all
processor memories (IDATA, XDATA, CODE memory); FLASH CODE
memory programming; two hardware code execution breakpoints; six
configurable hardware watch-points (IDATA, XDATA, SFRs); unlimited
number of OPCODE execution breakpoints
Dhrystone Benchmark Version 2.1 was used,
to measure the Core performance. The following table gives a survey about the DT8051
performance, in terms of Dhrystone/sec and
VAX MIPS rating per 1 MHz (DMIPS/MHz).
Device
80C51
DT8051
Dhry/sec [12 MHz]
DMIPS/MHz
80C51 ratio
197
0,0094
1,00
1597
0,0763
8,11
DT8051 performance in terms of DMIPS/MHz
DMIPS/MHz
0,1
ttdi
ttdo
ttdoen
ttck
0,0763
0,08
0,06
0,04
Control
Unit
Fmax
1- compact DoCD version includes processor execution control (run, halt,
reset, step); read-write all processor content (PC, SFRs); read-write all
processor memories (IDATA, XDATA, CODE memory); FLASH code
memory programming; one hardware code execution breakpoint;
unlimited number of OPCODE execution breakpoints
Timers
0&1
Opcode
Decoder
100 MHz
130 MHz
230 MHz
Technology /
Speed grade
Area
Fmax
optimization
[gates]
0.25u area
typical
7 530
100 MHz
0.18u area
typical
7 150
130 MHz
0.09u area
typical
6 650
230 MHz
DT8051 with compact version1 of DoCD debugger
t1
gate1
rst
clk
Fmax
0,02
0,0094
0
80C51
DT8051
5
Copyright © 1999-2015 DCD – Digital Core Design. All Rights Reserved.
All trademarks mentioned in this document are the property
of their respective owners.
CONTACT
For any modifications or special requests,
please contact Digital Core Design or local
distributors.
DCD’s headquarters:
Wroclawska 94
41-902 Bytom, POLAND
e-mail: : [email protected]
tel. : +48 32 282 82 66
fax : +48 32 282 74 37
Distributors:
Please check: http://dcd.pl/sales
6
Copyright © 1999-2015 DCD – Digital Core Design. All Rights Reserved.
All trademarks mentioned in this document are the property
of their respective owners.