1 / 17

AVR-Ydin

AVR-Ydin. ATmega328P. Kimmo Lepikkö & Joonas Äijälä. TTE1snL. 22.11.2011. Johdanto . Arduino Unon ytimenä toimii ATmega328P Y din on 8-bittinen Ytimen päätehtävä on varmistaa ohjelman oikea suoritus : Ytimen täytyy saada suora yhteys muistiin Suorittaa laskutoimituksia

kagami
Download Presentation

AVR-Ydin

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. AVR-Ydin ATmega328P Kimmo Lepikkö & Joonas Äijälä • TTE1snL • 22.11.2011

  2. Johdanto • Arduino Unon ytimenä toimii ATmega328P • Ydin on 8-bittinen • Ytimen päätehtävä on varmistaa ohjelman oikea suoritus : • Ytimen täytyy saada suora yhteys muistiin • Suorittaa laskutoimituksia • Ohjata oheislaitteita sekä hoitaa keskeytykset

  3. Sisäinen rakenne • Ydin jaetaan kolmeen pääosaan: • ALU (aritmeettislooginen yksikkö) • Rekisterit (lippurekisteri ja yleiskäyttöiset rekisterit) • Ohjausosa

  4. ALU • Suorittaa kolmenlaisia operaatioita: • Aritmeettiset operaatiot : Esimerkiksi plus-, vähennys-, kerto- sekä jakolaskut

  5. Loogiset operaatiot Esimerkiksi AND, OR, NOT, XOR

  6. Bittimuunnos operaatiot 00010111 siirtovasemmallayhdellä =00101110

  7. Rekisterit • Toimivat tiedon väliaikaisena varastopaikkana • Ytimessä on monta erilaista rekisteriä: • Lippurekisteri • Yleiskäyttöiset rekisterit • Muut rekisterit

  8. Lippurekisteri: • Tiedot viimeisimmistä ytimessä suoritetuista operaatioista • Bitit (0-7)

  9. Lippurekisterit • Bitti 0 – C: Carry eli ylivuotolippu • Bitti 1 – Z: Zero • Bitti 2 – N: Negative • Bitti 3 – V: Kahden komplementin ylivuoto • Bitti 4 – S: Sign eli merkkibitti • Bitti 5 – H: HalfCarry • Bitti 6 – T: Bit Copy Storage eli varastopaikka • Bitti 7 – I: GlobalInterruptEnable

  10. Yleiskäyttöiset rekisterit • 32kpl 8bit • Suora yhteys prosessoriin (nopeita) • Operaatiot suoritetaan yhden kellojakson aikana • Rekistereitä voidaan yhdistää

  11. Ohjelmalaskuri • Rekisteri, jossa on seuraava suoritettavan käskyn osoite Käskyrekisteri • Rekisteri johon tallennetaan kulloinkin suoritettava käsky Pino-osoitin • Rekisteri joka osoittaa keskusmuistin pinon huipun osoitteeseen

  12. Ohjausosa Käskydekooderi • Muuntaa käskyrekisterin käskyn ohjaussignaaliksi • Hoitaa prosessorin ajoituksen

  13. Yhteenveto • Yksinkertaistettu silti vaativaa logiikkaa • Kolmeen osaan jako: • ALU = laskenta • Rekisterit = tilapäisten muistipaikkojen osoitteet • Ohjausosa = signaalien ohjaus

  14. Lähteet: • Mikrotietokonetekniikka: http://www.oamk.fi/~pekkar/sul_tk_perusteet/Kirja/Luku3_Mikroprosessori.pdf • Atmel: http://www.atmel.com/dyn/products/product_docs.asp?category_id=163&family_id=607&subfamily_id=760&part_id=4198 • Wikipedia: Artikkelit aiheista(Stack Pointer, Instruction Register, Instruction Decoder, Program Counter, ALU) http://en.wikipedia.org/wiki/Arduino#Hardware • http://www.partco.biz/verkkokauppa/article_info.php?articles_id=12

More Related