ΠΕΡΙΓΡΑΦΗ ΥΛΙΚΟΥ AVR 1. ΕΙΣΑΓΩΓΗ 1.1 ΓΕΝΙΚΗ ΔΟΜΗ 1.2 ΟΙΚΟΓΕΝΕΙΕΣ 1.3 ΤΥΠΟΙ 1.4 ΕΡΓΑΛΕΙΑ Oι βασικές αρχές λειτουργίας των RISC είναι : Εντολές ενός κ.μ. με κατάλληλη σχεδίαση της μονάδας διοχέτευσης Μεγάλος αριθμός καταχωρητών Εντολές με ίδιο format Αρχιτεκτονική Harvard
1. ΕΙΣΑΓΩΓΗ RISC 1.1 ΓΕΝΙΚΗ ΔΟΜΗ Harvard architecture Instruction Pipeline General purpose registers
1.2 ΟΙΚΟΓΕΝΕΙΕΣ FPSLIC, RF, USB controller, Smart Card, Core
1.3 ΤΥΠΟΙ
XMEGA, the newest member of the AVR family XMEGA operates from only 1.6 volts with speeds up to 32 MHz.
1.4 ΕΡΓΑΛΕΙΑ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ
Debugging tools Simulator = Απεικόνιση του πραγματικού συστήματος από πρόγραμμα, με σκοπό την ανάλυση και παρατήρηση της συμπεριφοράς (model behavior) του. Δεν είναι πραγματικού χρόνου. Δεν συνδέεται στο σύστημα εφαρμογής. Δύσκολο να απεικονίσει εξωτερικά γεγονότα. Emulator = Σύστημα που δέχεται τις ίδιες εισόδους με το πραγματικό σύστημα και παράγει τις ίδιες εξόδους. Συμπεριφέρεται ακριβώς σαν το πραγματικό σύστημα, οπότε μπορεί να αντικαταστήσει αυτό. Microcontroller starting kit = Evaluation Board + ISP (In System Programmer) + IDE (Integrated Development Environment)
Emulator types: A) Emulator consisted of a base unit and a probecard Emulator control logic Emulation memory Actual emulation device (Bond-out chip i.e. microcontroller with additional pins in order to store program into emulation RAM, to control program execution flow and to access registers and memory locations) Pin adapter to target
B) Emulator Debug Board Module (DBM) based Γ) JTAG In Circuit Emulator (ICE) Real time emulation of the μc while it is running in target system
Microcontroller starting kit = Evaluation Board + ISP (In System Programmer) + IDE (Integrated Development Environment)
Microcontroller starting kit = Evaluation Board + ISP (In System Programmer) + IDE (Integrated Development Environment) Evaluation board
2. ΑΡΧΙΤΕΚΤΟΝΙΚΗ 2.1 ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΓΑΣΙΑΣ 2.2 ΜΝΗΜΗ ΔΕΔΟΜΕΝΩΝ (SRAM) 2.3 ΜΝΗΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ (FLASH) 2.4 MNHMH EEPROM 2.5 ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ 2.6 ΠΡΟΣΒΑΣΗ ΜΝΗΜΗΣ ΚΑΙ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ 2.7 SYSTEM CLOCK 2.8 RESET 2.9 WATCHDOG TIMER 2.10 POWER MANAGEMENT AND SLEEP MODES 2.11 AVR FUSES AND LOCK BITS 2.12 I/O REGISTERS 2.13 INTERRUPTS 2.14 I/O PORTS
Fuses + lock bits
ATmega 128 The ATmega128 provides the following features: 128K bytes of In-System Programmable Flash with Read-WhileWrite capabilities, 4K bytes EEPROM, 4K bytes SRAM, 32 general purpose working registers Real Time Counter (RTC), Programmable Watchdog Timer with Internal Oscillator 4 flexible Timer/Counters with compare modes and PWM, 53 general purpose I/O lines, 2 USARTs, Two-wire Serial Interface, An 8-channel, 10-bit ADC with optional differential input stage with programmable gain, SPI serial port,
IEEE std. 1149.1 compliant JTAG test interface, also used for accessing the On-chip Debug system and programming the flash memory The On-chip ISP Flash allows the program memory to be reprogrammed in-system through an SPI serial interface, by a conventional nonvolatile memory programmer, or by an On-chip Boot program running on the AVR core. The boot program can use any interface to download the application program in the application Flash memory. Software in the Boot Flash section will continue to run while the Application Flash section is updated, providing true Read-WhileWrite operation. 6 software selectable power saving modes.
Γενικό διάγραμμα του AVR Harvard architecture : Ταυτόχρονη προσπέλαση των : Program Memory 16 bit Data Memory 8 bit
2.1 ΚΑΤΑΧΩΡΗΤΕΣ ΕΡΓΑΣΙΑΣ (μοντέλο προγραμματισμού Registers mapped as SRAM, but not physically. ALU λειτουργίες ανάμεσα σε καταχωρητές ή σταθερά και καταχωρητή (εντολές ενός κύκλου μηχανής)
SR
2.2 ΜΝΗΜΗ ΔΕΔΟΜΕΝΩΝ (SRAM) Basic ADDRESSING modes: Direct Indexed (pointer) Stack
Αρίθμηση πραγματικών θέσεων SRAM αρχίζει από $0060 0x00 0x1F : GPR 0x20 0x5F : I/O registers (H συγκεκριμένη αρίθμηση των θέσεων SRAM αναφέρεται για την περίπτωση μοντέλων όπου δεν υπάρχουν οι 160 External I/O registers, στα υπόλοιπα μοντέλα η εγκατεστημένη SRAM αρχίζει από την θέση $0100) 60-DF
Στο σχήμα εμφανίζονται οι θέσεις $60 $DF της SRAM 60-DF $60-$DF
Στο σχήμα εμφανίζονται οι 224 θέσεις προσπελάσιμες σαν θέσεις SRAM. Μόνο οι θέσεις $60 $DF ανήκουν στην φυσική SRAM
2.3 ΜΝΗΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ (FLASH) Program Memory width : 16 bit Αποθήκευση των : IRQ (Interrupt ReQuest) vectors Instructions Constants LUT (Look Up Table) Boot program
2.4 MNHMH EEPROM Access EEPROM as peripheral with specific registers and instructions
2.5 ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ PC incremented by one Αλλαγή PC από : Branch instruction ή Interrupt. In Sleep mode, PC halts
Μορφή των πεδίων εντολής για διάφορες εντολές
Ταυτόχρονη προσπέλαση : Program Memory 16 bit Data Memory 8 bit SRAM addressed Directly Indirectly
2.6 ΠΡΟΣΒΑΣΗ ΜΝΗΜΗΣ ΚΑΙ ΕΚΤΕΛΕΣΗ ΕΝΤΟΛΩΝ 2.6.1 ΣΥΜΒΟΛΙΣΜΟΙ ΣΤΑ ΔΙΑΓΡΑΜΜΑΤΑ ΧΡΟΝΙΣΜΟΥ
Transition timing Change in signal state
Timing diagram specifications
2.6.2 ΔΙΟΧΕΤΕΥΣΗ ΕΝΤΟΛΩΝ (INSTRUCTION PIPELINE) Instruction fetch/decode concurrently with instruction execution
2.6.3 ΠΡΟΣΠΕΛΑΣΗ SRAM
The ALE pulse in period T4 is only present if the next instruction accesses the RAM (internal or external). See slide 4 of hardware1 Compute address Address valid