Professional Documents
Culture Documents
Memory:
Memory: Address
AddressBus
Bus
Data
Data&& CPU
CPU
Instructions
Instructions Data
DataBus
Bus
Harvard Architecture
Program
Program PM
PMAddress
AddressBus
Bus
DM
DMAddress
AddressBus
Bus Data
Data
Memory:
Memory: CPU
CPU Memory:
Memory:
Instructions
Instructions PM
PMData
DataBus
Bus
DM
DMData
DataBus
Bus Data
Data
Program
Program PM
PMAddress
AddressBus
DM
DMAddress
AddressBus
Bus Data
Data
Instruction
Bus
Cache
Memory:
Memory: CPU
CPU Memory:
Memory:
Instructions
Instructions PM
PMData
DataBus
Bus
DM
DMData
DataBus
Bus Data
Data
09/23/21 Veton Këpuska 2
Blackfin Processor Architecture
The Blackfin architecture was crafted with the
requirements of a Controller and a DSP in mind
Number Systems
Time Quantization (Sampling) of
Analog Signals
a) b) Analog-to-Digital
1 Conversion.
f s=
T a) Continuous
Signal x(t).
x(t)
b) Sampled signal
Analog
Low-pass
Sample
and x a ( nT ) with sampling
Filter period T
Hold
satisfying
Nyquist rate as
specified by
Sampling
Theorem.
Analog to
Digital x [ n] DSP
Converter
Converter c) Digital sequence
obtained after
sampling and
c) quantization x[n]
Multiprocessor
• Symmetric Dual Core BF561 BF56x Family
• 328 kB RAM • 328 kB RAM
• 600+ MHz • DDR
• USB 2.0
• Integrated Peripherals • SATA
Performance
BF536
• 100 kB RAM
• CAN
Portable–Low Power • 10/100
BF52x Family
• 132 kB RAM
• 400 MHz Ethernet • USB 2.0
• 0.23 mW/MHz MAC • 10/100 Ethernet MAC
BF532/BF531
• 84 kB RAM
• Multichip languages
Present Future
ADSP-BF531
ADSP-BF531 ADSP-BF532
ADSP-BF532 ADSP-BF533
ADSP-BF533
16 16 • 8-bit,
8 8 8 8
•16-bit, &
Barrel
Shifter
40 40 •32-bit data
ACC0 ACC1
From Register File:
8 32-bit Registers R0-R7
Example (Assembly):
R0 = SYSCFG; // Load data register with contents of
SYSCFG register
09/23/21 Veton Këpuska 21
Blacfin Core Registers
Data Registers 31 0
39 31 15 P0
A0X A0.H A0.L Address P1
A1.H A0.L P2
A1X Registers P3
31 15
R0 P4
R0.H R0.L
P5
R1 R1.H R1.L
FP
R2
SP
R3 USP
R4 R4.H R4.L 31 0 31 0 31 0 31 0
R5 I0 L0 B0 M0
I1 L1 B1 M1
R6
I2 L2 B2 M2
R7 R7.H R7.L I3 L3 B3 M3
LD0 32-bits 16 16
8 8 8 8
R7 R7.H R7.L
R6 R6.H R6.L
LD1 32-bits
R5 R5.H R5.L
R1 R1.H R1.L
A0 A1
R0 R0.H R0.L
LD0 32-bits
16 16
8 8 8 8
LD1 32-bits
R7 R7.H R7.L
R6 R6.H R6.L
16 16
8 8 8 8
R7 R7.H R7.L
R6 R6.H R6.L
LD0 32-bits
R5 R5.H R5.L
R4 R4.H R4.L
R3 R3.H R3.L barrel
LD1 32-bits R2 R2.H R2.L shifter
40 40
R1 R1.H R1.L
R0 R0.H R0.L
SD 32-bits
A0 A1
Shift Functions
Arithmetic Shifts preserve the sign of the original
number. The sign bit value back-fills the left-most bit
positions vacated by the arithmetic right shift.
Logical Shifts discard any bits shifted out of the
register and back-fills vacated bits with zeros.
Counters
LT0, LT1 Loop Tops Holds the address of the first instruction within a loop
LB0, LB1 Loop Bottoms Holds the address of the last instruction of the loop
Conceptually:
Interrupts from the peripherals arrive at
SIC
SIC routes interrupts directly to general-
purpose interrupts of the CEC.
It
8.
9.
7.
5.
6.
4.
1.
3.
2.
It should
When
When
The
ILAT
IMASK
The
SIC_ISR
SIC_IMASK
SIC_IWR
should be
the
the
Event
adds noted
masks
SIC_IARx
be event
interrupt
Vector
logs
noted that
Interrupt
off
the
masks
checks or
to
that emulation,
vector
service
Table for
(EVT)
Aemulation,
to
enables
registers,
request
off
see or its
which
and log
enables
ifforit isreset,
Interrupt
routine
events
should accessed
of
map
keeps ofA
(ISR)
the NMI,
interrupts
reset,wake has
interrupts for
toand
entered
different
track peripheral
NMI,up of from
the
and exception
Interrupt
look
latched up
core
systemcorethe
the
byAA
exception
8.
9.
7.
5.
6.
4.
1.
3.
2. When
When
The
ILAT
IMASK
The
SIC_ISR
SIC_IMASK
SIC_IWR the
the
Event
addsmasks
SIC_IARx event
interrupt
Vector
Interrupt
logs off
masks
checks vector
or service
Table
registers,
the to (EVT)
AInterrupt
to
enables
request
off
see or its
which
if Interrupt
routine
and logis
events
enables
it should accessed
of
map
keeps ofA
(ISR)
the has
interrupts for
toentered
different
track
interrupts
wake Interrupt
look
latched
peripheral
up of up
core
system
from
the corethethe
by
core
has
events, pipeline,
been
appropriate
the core
priorities.
as
interrupts
peripherals wellexecuted,
but
If
to as
that
at the
vector
not
the
anot appropriate
yet
IVGx
hardware
smaller
are the
for RTI
actively
event
set
asserted error
of IPEND
instruction
being A’s
corresponding
(IVHW)
general-purpose
but not bit
interrupt
serviced.
yet andis
clearsset,
is to
serviced thewhich
service
AAInterrupt
core timer
core(that AA
is,
from
core
has an
appropriate
the core
priorities.
events, as
interrupts
peripherals
from
clears
appropriate
routine
is not an
the
idled
pipeline,
been but
well If
to
that
idled atathe
state
the
executed,
vector
the
as
respective
(ISR).
masked, IPEND
system
yet
IVGxbased
appropriate
smaller
are
the
state
the
the
for
hardware
system
based
bit. ILAT
RTI
set
asserted
However,
process
level.
on
Interrupt
actively
event error
of
on
bit.
this
beingIf
IPEND
instruction
A’sInterrupt
interrupt
corresponding
(IVHW)
general-purpose
but
level.
this
Thus,
proceeds not
If bit
yet clears
interrupt
serviced.
and
Interrupt
interrupt
the IPEND
relevant
to Step
to
core
serviced is
request.
set, the
request.
tracks
not
iswhich
service
Interrupt
timer
core
SIC_ISR
7. (that
not
all is,
interrupts
an
(IVTMR) interrupt
masked,
clears
routine
is
an not interrupt
appropriate
interrupts the (IVG7
the
(ISR).
masked,
interrupt
masked, the service
request
IPEND
(IVG7 –
the
service–
request IVG15),
requests,
respective routine
proceeds
bit.ILAT enter
However,
process
IVG15),
routine
proceeds determine
hasn’t
bit. to
the
Thus,
proceeds yet
Step
interrupt
the
determine
hasn’tto yet
Step the
cleared
4.
IPEND
relevant
to Step
the
cleared
4. core
core thepriority
processing
tracks
SIC_ISR
7.the all
priority
(IVTMR)
pending interrupt requests, enter the interrupt processing
chain
bit
of
bit
ofat notinterrupts,
isisnot
Interrupt
interrupt).
pending the
Interrupt
interrupt).
clearedA.
interrupts,
cleared
ILAT A.level
as
unless aswell
unless
and
the
well
aretheas those
interrupt
as those
interrupt
not affected
being
service
being
service
by
presently
routine
presently
the routine
system-
serviced.
clears
chain the
at the
serviced.
clears the mechanism
ILAT that
level andthat
mechanism generated
aregenerated
not affected Interrupt
by theA,
Interrupt or
orifif
system-
A,
levelthe interrupt
process registers (SIC_IWR, SIC_ISR, SIC_IMASK,
level the processof
interrupt ofservicing
registers
servicing thetheinterrupt
(SIC_IWR, SIC_ISR,
interrupt clears
clears this
thisbit.
SIC_IMASK, bit.
SIC_IARx).
SIC_IARx).
BF534/BF536/BF537 Peripherals
TWI, CAN (Controller Area Network)
BF536/BF537 Peripheral
Ethernet
Power Manager
32 Configurable Mailboxes
8 dedicated transmitters and 8 dedicated receivers
16 configurable (transmit or receive)
Data Filtering (first two bytes) can be used for Acceptance Filtering
131MHz
1:64X PLL VCO
DMA
64 bit L1
Programmable Instruction
frequency and Large enough to run Max Bandwidth
application code 266MB/sec
voltage control
Cache available if
525 MHz operations from SDRAM
are desired
Rows are “open” in
Ext 4 SDRAM banks
32 Bus 16 reduces
page activation
L1 W/direction
Blackfin Data A Control
Makes
Processor best use
of
SDRAM
2 core fetches
or 1 fetch and 1
store
Core >600MHz
16Kbyte
Single cycle to 16Kbyte
access L1 Instruction L1 Data Memory L1 Data Memory
Memory >600MHz
10s of Kbytes
31 0
P0
Address P1
Registers P2
P3
SP points to supervisor stack in
P4
Supervisor mode and user stack in
P5
User mode
FP
SP
USP is accessible in supervisor
USP mode only – Allows access to user
31 0 31 0 31 0 31 stack location while in Supervisor
I0 L0 B0 M0 mode
I1 L1 B1 M1
I2 L2 B2 M2
I3 L3 B3 M3
C 0x00000004 0x00000004
1C 0x00000008 0x00000008
24 0x0000000A 0x0000000A
28 0x0000000B 0x0000000B