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


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

Dodatak. Skup instrukcija

Module Contents of the Module Hours COs

UNIT THE 8051 INSTRUCTION SET AND PROGRAMMING

Programming Book Microcontroller Kit. Rev 3.0 January, Wichit Sirichote

AL8051S 8-BIT MICROCONTROLLER Application Notes

MASSEY UNIVERSITY PALMERSTON NORTH CAMPUS

Embedded Controller Programming

8051 Microcontrollers

Dragonchip. Instruction Set Manual

Y51 Microcontroller. Technical Manual

8051 Microcontroller Assembly Programming

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

Application Brief D-005

Assembly Language programming (2)

C51 Family. Architectural Overview of the C51 Family. Summary

TUTORIAL Assembly Language programming (2)

8051 Core Specification

Chapter Family Microcontrollers Instruction Set

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

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

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

UNIT MICROCONTROLLER AND ITS PROGRAMMING

MCS -51 Programmer s Guide and Instruction Set

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

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

Introduction to uc & Embedded Systems

~: Simple Programs in 8051 assembly language :~

MICROPROCESSOR LABORATORY MANUAL

ET355 Microprocessors Thursday 6:00 pm 10:20 pm

Principle and Interface Techniques of Microcontroller

Assembly Language programming (3)

ELEG3923 Microprocessor Ch.6 Arithmetic and Logics

CW6631B Bluetooth Audio Player Microcontroller User Manual

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

Application Brief D-002

8051 Instruction Set

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

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

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

UNIT MICROCONTROLLER

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

MICROCONTROLLER AND PLC LAB-436 SEMESTER-5

MICROPROCESSOR & MICROCONTROLLER

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

8051 Programming using Assembly

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

8051 Programming: Arithmetic and Logic

Microcontroller and Applications

DS80C390 Dual CAN High-Speed Microprocessor

University of Toronto at Scarborough CSC CSSF - Microprocessor Systems

ET2640 Microprocessors

MASSEY UNIVERSITY PALMERSTON NORTH CAMPUS

Principle and Interface Techniques of Microcontroller

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

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

ELEG3924 Microprocessor

TYPES OF INTERRUPTS: -

ENE 334 Microprocessors

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

CHAPTER 6 ARITHMETIC, LOGIC INSTRUCTIONS, AND PROGRAMS

CHAPTER 3 JUMP, LOOP, AND CALL INSTRUCTIONS

SYLLABUS UNIT - I 8086/8088 ARCHITECTURE AND INSTRUCTION SET

Question Bank Microprocessor and Microcontroller

ELEG3923 Microprocessor Ch.3 Jump, Loop, and Call


MODULE-1. Short Answer Questions

Arithmetic and Logic

Lecture Instruction Set

UART Timer 0 Timer 1. USB Controller / Transceiver HIGH-SPEED CONTROLLER CORE DEBUG POR

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

Lab-Report Microprocessors



Core8051. Advanced v0.1

Programmable System-on-Chip (PSoC )

Programmable System-on-Chip (PSoC )

CS 320. Computer Architecture Core Architecture

Introduction To MCS-51

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

Chapter 9. Programming Framework

Programmable System-on-Chip (PSoC )

Report Title: Digital Voltmeter using 89C51

Transcription:

Digital Blocks Semiconductor IP 805 Microcontroller General Description The Digital Blocks Microcontroller Verilog IP Core is complaint with the MCS 5 Instruction Set and contains standard 805 MCU peripherals, including an interrupt controller, UART, two 6-bit timers, and four 8-bit I/O ports. Optional Program Load MCU Verilog IP Core Program Memory (up to 64 KB) Data Memory (up to 64 KB) Optional 4 I/O Ports I/O P O R T S 2 Timers 32 CPU Core CPU Internal Data Ram (28/256 bytes) 805 SFR Bus T I M E R S Counter Inputs Serial Port TxD UART RxD 6 Interrupts ASIC, ASSP, FPGA device Interrupt Controller Figure : MCU Verilog IP Core Diagram -DS-V0_ 2/5/207

The CPU Core executes instructions out of Program Memory, sized by the user up to 64 KB. Higher Program Memory size is available through banking. Program Memory can be either non-volatile memory or SRAM loaded from a non-volatile memory source. Integrated within the CPU Core is 28/256 byte SRAM, for fast program data storage & manipulation. Optionally, the user can add up to 64 KB of Data Memory for larger data processing requirements. The is an 8-bit architecture with 255 instructions, which include Arithmetic, Logical, Boolean Bit Manipulation, Data Transfer, & Program Branching. The Boolean Processor is for single-bit data manipulation, and the Arithmetic Unit s multiply/divide instructions consume a very low VLSI footprint. Combined with the 805 Special Function Register interface, users can customize the peripherals beyond the standard peripherals, according to their unique requirements. Digital Blocks employs it Instruction Overlap Architecture to achieve a minimum 3 Clocks Per Instruction (CPI) execution cycle. This achieves a higher throughput without resorting to the complex, higher resource requirements of pipelining. The 805 Architecture with Register, Direct Address, Index Address, & Immediate Data addressing leads to smaller program space requirements. Thus, the 8-bit Microcontroller Verilog IP Core is an excellent choice for Embedded Control & Communications applications. -DS-V0_ 2 2/5/207

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 Minimum 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 Standard Peripherals: o Four 8-bit Ports for I/O o UART Controller o Two 6-bit Timer o Interrupt Controller Optional Peripherals: o More I/O Ports, Serial Port Controllers, Timers (including a Watchdog Timer), and more interrupt sources o Serial Port Interface (SPI) o I2C Controller (I2C) o PWM DAC with programmable frequency -DS-V0_ 3 2/5/207

805 Instruction Set Summary 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 -DS-V0_ 4 2/5/207

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 -DS-V0_ 5 2/5/207

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 -DS-V0_ 6 2/5/207

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 -DS-V0_ 7 2/5/207

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 -DS-V0_ 8 2/5/207

Verification Method Digital Blocks provides Simulation & FPGA verification platforms. The 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 with expected results checked. The FPGA verification platform exercises the 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. Please contact Digital Blocks for additional information. Deliverables The is available in synthesizable RTL Verilog, 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 -DS-V0_ 9 2/5/207