Digital Blocks Semiconductor IP

Similar documents
Digital Blocks Semiconductor IP

Digital Blocks Semiconductor IP

Microprocessors 1. The 8051 Instruction Set. Microprocessors 1 1. Msc. Ivan A. Escobar Broitman

Microcontroller Intel [Instruction Set]

Programming of 8085 microprocessor and 8051 micro controller Study material

Q. Classify the instruction set of 8051 and list out the instructions in each type.

Instruction Set Of 8051

Highlights. FP51 (FPGA based 1T 8051 core)

Architecture & Instruction set of 8085 Microprocessor and 8051 Micro Controller

8051 Overview and Instruction Set

INSTRUCCIONES ARITMETICAS ERROR! MARCADOR NO DEFINIDO.

SN8F5000 Family Instruction Set

DR bit RISC Microcontroller. Instructions set details ver 3.10

UNIT 2 THE 8051 INSTRUCTION SET AND PROGRAMMING

8051 Microcontroller

Microcontroller. Instruction set of 8051


Dodatak. Skup instrukcija

Memory organization Programming model - Program status word - register banks - Addressing modes - instruction set Programming examples.

UNIT THE 8051 INSTRUCTION SET AND PROGRAMMING

Module Contents of the Module Hours COs

Programming Book Microcontroller Kit. Rev 3.0 January, Wichit Sirichote

AL8051S 8-BIT MICROCONTROLLER Application Notes

Dragonchip. Instruction Set Manual

8051 Microcontrollers

MASSEY UNIVERSITY PALMERSTON NORTH CAMPUS

NAME as31 - An Intel 8031/8051 assembler. SYNOPSIS as31 [-h] [-l] [-s] [-v] [-Aarg] [-Ffmt] [-Ofile] infile.asm

Y51 Microcontroller. Technical Manual

Assembly Language programming (2)

8051 Microcontroller Assembly Programming

TUTORIAL Assembly Language programming (2)

Application Brief D-005

C51 Family. Architectural Overview of the C51 Family. Summary

Embedded Controller Programming

Chapter Family Microcontrollers Instruction Set

Control Transfer Instructions Jump, Loop, and Call. ECE473/573 Microprocessor System Design, Dr. Shiue

8051 Core Specification

UNIT MICROCONTROLLER AND ITS PROGRAMMING

International Journal of Digital Application & Contemporary research Website: (Volume 1, Issue 2, September 2012)

TUTORIAL. Donal Heffernan University of Limerick May Tutorial D.Heffernan 2000,

80C51 family programmer s guide and instruction set. 80C51 Family. PROGRAMMER S GUIDE AND INSTRUCTION SET Memory Organization. Philips Semiconductors

MCS -51 Programmer s Guide and Instruction Set

EEE3410 Microcontroller Applications Department of Electrical Engineering Lecture 4 The 8051 Architecture

~: Simple Programs in 8051 assembly language :~

Introduction to uc & Embedded Systems

Principle and Interface Techniques of Microcontroller

ET355 Microprocessors Thursday 6:00 pm 10:20 pm

Application Brief D-002

ELEG3923 Microprocessor Ch.6 Arithmetic and Logics

MICROPROCESSOR LABORATORY MANUAL

Assembly Language programming (3)

What Registers are available? Programming in Assembler. Assembler Programming - like early Basic. Assembler Data Movement Instructions

CW6631B Bluetooth Audio Player Microcontroller User Manual

8051 Instruction Set

Legacy documentation refer to the Altium Wiki for current information. TSK52x MCU

C51 Family. C51 Family Programmer s Guide and Instruction Set. Summary

MICROPROCESSOR & MICROCONTROLLER

UNIT MICROCONTROLLER

UNIT-III ASSEMBLY LANGUAGE PROGRAMMING. The CPU can access data in various ways, which are called addressing modes

Legacy documentation refer to the Altium Wiki for current information. TSK51x MCU

8051 Programming: Arithmetic and Logic

8051 Programming using Assembly

DS80C390 Dual CAN High-Speed Microprocessor

Principle and Interface Techniques of Microcontroller

ENE 334 Microprocessors

Lecture 5. EEE3410 Microcontroller Applications Department of Electrical Engineering Assembly Language Programming (1)

MASSEY UNIVERSITY PALMERSTON NORTH CAMPUS

8051 Single Board Monitor Programming. Minmon - Yeralan & Ahluwalia. PaulMon1 & PaulMon2 - Paul Stoffregen

TYPES OF INTERRUPTS: -

CHAPTER 3 JUMP, LOOP, AND CALL INSTRUCTIONS

ELEG3924 Microprocessor

University of Toronto at Scarborough CSC CSSF - Microprocessor Systems

ET2640 Microprocessors

MICROCONTROLLER AND PLC LAB-436 SEMESTER-5


Microcontroller and Applications

Arithmetic and Logic

Question Bank Microprocessor and Microcontroller

CHAPTER 6 ARITHMETIC, LOGIC INSTRUCTIONS, AND PROGRAMS

Lecture Instruction Set

ELEG3923 Microprocessor Ch.3 Jump, Loop, and Call

1. Write A Program to move a block of data within the internal RAM


VRS540-4kB Flash, 128B RAM, 25~40MHz, 8-Bit MCU

Lab-Report Microprocessors

SYLLABUS UNIT - I 8086/8088 ARCHITECTURE AND INSTRUCTION SET

System & Program Developments of 8051

Core8051. Advanced v0.1

8051 Microcontroller Logical Operations. Prepared by : A. B. Modi Target Audience : 5 th Semester Students

Introduction To MCS-51

DHANALAKSHMI COLLEGE OF ENGINEERING DEPARTMENT OF ELECTRICAL AND ELECTRONICS ENGINEERING YEAR : III SEM : VI


Programmable System-on-Chip (PSoC )

Programmable System-on-Chip (PSoC )

VRS550-8kB Flash, 256B RAM, 25~40MHz, 8-Bit MCU VRS560-16kB Flash, 256B RAM, 40MHz, 8-Bit MCU

Report Title: Digital Voltmeter using 89C51

Chapter 9. Programming Framework

Section Microcontroller Instruction Set

VRS570 32K Flash, 1kB RAM, 25~40MHz, 8-Bit MCU VRS580 64K Flash, 1kB RAM, 25~40MHz, 8-Bit MCU

JUMP, LOOP AND CALL INSTRUCTIONS

Transcription:

Digital Blocks Semiconductor IP DB805C-FSM 805 Microcontroller FSM Finite State Machine General Description The Digital Blocks DB805C-FSM IP Core contains Digital Blocks compact DB805C CPU Core & GPIO ports for complex Finite State Machine (FSM) implementations. The DB805C CPU Core fetches & executes instructions from Program Memory, which is user defined up to 64 KB. Program Memory can be either non-volatile memory or SRAM loaded from a non-volatile memory source. Users can, therefore, update the FSM at any point in the development cycle, including servicing the product in the field. The DB805C is ideally suited for programmable, complex FSM implementations, with its 8-bit architecture and 255 instructions, which include Arithmetic, Logical, Boolean Bit Manipulation, Data Transfer, & Program Branching. The Boolean Processor is for singlebit data manipulation, and the Arithmetic Unit s multiply/divide instructions consume a very low VLSI footprint. For fast program data storage & manipulation, the DB805C contains an integrated 28/256 byte SRAM. Optionally, the user can add up to 64 KB of Data Memory. Through user selectable -800 GPIO, the FSM interfaces with the external logic under control. Figure depicts the DB805C-FSM IP Core. DB805C-FSM IP Core Optional Program Load Program Memory (up to 64 KB) DB805C CPU Core Data Memory (up to 64 KB) Optional I/O P O R T S 800 GPIO CPU Internal Data Ram (28/256 bytes) 805 SFR Bus Figure : DB805C-FSM IP Core Diagram DB805C-FSM-DS-V0_ 2/5/207

DB805C-FSM 805 Microcontroller FSM Features 8-bit Microcontroller Binary Compatible with MCS 5 Instruction Set Standard 805 Architecture o Arithmetic / Logical Unit o Hardware Multiply / Divide with low VLSI footprint o Boolean Processor for Bit Manipulation o Branching Instructions for Program Control o Data Transfer Instructions o 5 Addressing Modes: Register, Direct, Indirect, Immediate, Indexed. Requires less Program Code Memory o instructions o Internal Data RAM, user defined as 28 or 256 bytes Enhanced 805 Architecture o 3 Cycles Per Instruction Execution Streamlined ASIC & ASSP & FPGA Integration o Registered RAMs o Hardware Micro Control Unit o Unidirectional Busses o Fully Static, Rising Edge Only, Synchronous Design Program Memory o User Defined, up to 64 KB o Non-Volatile Memory or Configurable SRAM Data Memory o User Defined, up to 64 KB General Purpose I/O (GPIO) for Finite State Machine Inputs / Outputs o User Defined, 800 GPIO Optional Peripherals: o Full-Duplex Serial Port o Serial Port Interface (SPI) o I2C Controller (I2C) o Interrupt Controller supporting 6 sources o Watchdog Timer o Three 6-bit counters / timers (T0, T, T2) o PWM DAC with programmable frequency DB805C-FSM-DS-V0_ 2 2/5/207

805 Instruction Set Summary DB805C-FSM 805 Microcontroller FSM Arithmetic Operation ADD A, Rn Add register to Accumulator ADD A, direct Add direct byte to Accumulator 2 ADD A, @Ri Add indirect RAM to Accumulator ADD A,#data Add immediate data to Accumulator 2 ADDC A, Rn Add register to Accumulator with ADDC A, direct Add direct byte to Accumulator with 2 ADDC A, @Ri Add indirect RAM to Accumulator with ADDC A,#data Add immediate data to Accumulator with 2 SUBB A, Rn Subtract Register from Accumulator with Borrow SUBB A, direct Subtract direct byte from Accumulator 2 with SUBB A, @Ri Subtract indirect RAM from Accumulator with SUBB A,#data Subtract immediate data from Accumulator with 2 INC A Increment Accumulator INC Rn Increment Register INC direct Increment direct byte 2 INC @ri Increment direct RAM DEC A Decrement Accumulator DEC Rn Decrement Register DEC direct Decrement direct byte 2 DEC @ri Decrement direct RAM INC DPTR Increment Data Pointer MUL AB Multiply A & B DIV AB Divide A & B DA A Decimal Adjust Accumulator DB805C-FSM-DS-V0_ 3 2/5/207

DB805C-FSM 805 Microcontroller FSM Logical Operation ANL A, Rn AND Register to Accumulator ANL A, direct AND direct byte to Accumulator 2 ANL A, @Ri AND indirect RAM to Accumulator ANL A,#data AND immediate data to Accumulator 2 ANL direct, A AND Accumulator to direct byte 2 ANL direct, #data AND immediate data to direct byte 3 ORL A, Rn OR Register to Accumulator ORL A, direct OR direct byte to Accumulator 2 ORL A, @Ri OR indirect RAM to Accumulator ORL A,#data OR immediate data to Accumulator 2 ORL direct, A OR Accumulator to direct byte 2 ORL direct, #data OR immediate data to direct byte 3 XRL A, Rn Exclusive-OR Register to Accumulator XRL A, direct Exclusive-OR direct byte to Accumulator 2 XRL A, @Ri Exclusive-OR indirect RAM to Accumulator XRL A,#data Exclusive-OR immediate data to 2 Accumulator XRL direct, A Exclusive-OR Accumulator to direct byte 2 XRL direct, #data Exclusive-OR immediate data to direct 3 byte CLR A Clear Accumulator CPL A Complement Accumulator RL A Rotate Accumulator Left RLC A Rotate Accumulator Left through the RR A Rotate Accumulator Right RRC A Rotate Accumulator Right through the SWAP A Swap Nibbles within the Accumulator DB805C-FSM-DS-V0_ 4 2/5/207

DB805C-FSM 805 Microcontroller FSM Data Transfer Operation MOV A, Rn Move Register to Accumulator MOV A, direct Move direct byte to Accumulator 2 MOV A, @Ri Move indirect RAM to Accumulator MOV A, #data Move immediate data to Accumulator 2 MOV Rn, A Move Accumulator to Register MOV Rn, direct Move direct byte to Register 2 MOV Rn, #data Move immediate data to Register 2 MOV direct, A Move Accumulator to direct byte 2 MOV direct, Rn Move Register to direct byte 2 MOV direct, direct Move direct byte to direct byte 3 MOV direct, @Ri Move indirect RAM to direct byte 2 MOV direct, #data Move immediate data to direct byte 3 MOV @Ri, A Move Accumulator to indirect RAM MOV @Ri, direct Move direct byte to indirect RAM 2 MOV @Ri, #data Move immediate data to indirect RAM 2 MOV DPTR, Load Data Pointer with a 6-bit constant 3 #data6 MOVC A, Move Code byte relative to DPTR to @A+DPTR Accumulator MOVC A, @A+PC Move Code byte relative to PC to Accumulator MOVX A, @Ri Move External Data RAM (8-bit Address) to Accumulator MOVX A, @DPTR Move External Data RAM (6-bit Address) to Accumulator MOVX @Ri, A Move Accumulator to External Data RAM (8-bit Address) MOVX @DPTR, A Move Accumulator to External Data RAM (6-bit Address) PUSH direct Push direct byte onto stack 2 POP Direct Pop direct byte from stack 2 XCH A, Rn Exchange Register with Accumulator XCH A, direct Exchange direct byte with Accumulator 2 XCHD A, @Ri Exchange low-order Digit indirect RAM with Accumulator DB805C-FSM-DS-V0_ 5 2/5/207

DB805C-FSM 805 Microcontroller FSM Boolean Variable Manipulation CLR C Clear CLR bit Clear direct bit 2 SETB C Set SETB bit Set direct bit 2 CPL C Complement CPL bit Complement direct bit 2 ANL C, bit AND direct bit to 2 ANL C, /bit AND complement of direct bit to 2 ORL C, bit OR direct bit to 2 ORL C, /bit OR complement of direct bit to 2 MOV C, bit Move direct bit to 2 MOV bit, C Move carry to direct bit 2 JC rel Jump if is set 2 JNC rel Jump if not set 2 JB bit, rel Jump if direct bit is set 3 JNB bit, rel Jump if direct bit is Not set 3 JBC Bit, rel Jump if direct bit is set & clear bit 3 DB805C-FSM-DS-V0_ 6 2/5/207

DB805C-FSM 805 Microcontroller FSM Program Branching ACALL addr Absolute Subroutine Call 2 LCALL addr6 Long Subroutine Call 3 RET Return from Subroutine RETI Return from interrupt AJMP addr Absolute Jump 2 LJMP addr6 Long Jump 3 SJMP rel Short Jump (relative addr) 2 JMP @A+DPTR Jump indirect relative to the DPTR JZ rel Jump if Accumulator is zero 2 JNZ rel Jump if Accumulator is Not Zero 2 CJNE A, direct, rel Compare direct byte to Accumulator and Jump if Not Equal 3 CJNE A, #data, rel Compare immediate to Accumulator and 3 Jump if Not Equal CJNE Rn, #data, Compare immediate to register and Jump 3 rel if Not Equal CJNE @Ri, #data, Compare immediate to indirect and Jump 3 rel if Not Equal DJNZ Rn, rel Decrement Register and Jump if Not Zero 2 DJNZ direct, rel Decrement direct byte and Jump if Not 3 Zero NOP No Operation DB805C-FSM-DS-V0_ 7 2/5/207

DB805C-FSM 805 Microcontroller FSM Verification Method Digital Blocks provides Simulation & FPGA verification platforms. The DB805C simulation test suite loads Program Memory, exercises all instructions, and checks expected results. Building out from the directed tests are 805 programs loaded and run on the DB805C with expected results checked. The DB805C FPGA verification platform exercises the DB805C in Xilinx & Altera FPGAs. Please contact Digital Blocks for additional information. Customer Evaluation Digital Blocks offers a variety of methods for prospective customers to evaluate the DB805C. Please contact Digital Blocks for additional information. Deliverables The DB805C is available in synthesizable RTL Verilog / VHDL, along with the simulation test bench with expected results, datasheet, and user manual. Ordering Information Please contact Digital Blocks for additional technical, pricing, evaluation, and support information. Digital Blocks, Inc. PO Box 92 587 Rock Rd Glen Rock, NJ 07452 USA Phone: +-20-25-28 Fax: +-702-552-905 info@digitalblocks.com Copyright Digital Blocks, Inc. 2009-207, ALL RIGHTS RESERVED ### Digital Blocks is a registered trademark of Digital Blocks, Inc. All other trademarks are the property of their respective owners DB805C-FSM-DS-V0_ 8 2/5/207