Taustavirhetilan käyttöliittymä - Background debug mode interface

Tausta vianmääritystilaan ( BDM ) rajapinta on sähköinen rajapinta, joka mahdollistaa virheenkorjaus on sulautettujen järjestelmien . Erityisesti se tarjoaa piirien sisäisen virheenkorjaustoiminnon mikrokontrollereissa. Se vaatii yhden johdon ja erikoistuneen elektroniikan virheenkorjauksessa olevassa järjestelmässä. Se esiintyy monissa Freescale Semiconductor -tuotteissa.

Käyttöliittymän avulla isäntä voi hallita ja kysellä kohdetta . Kohdelaitteessa vaaditaan erikoistunut laitteisto. Isäntä ei vaadi erityistä laitteistoa; yksinkertainen kaksisuuntainen I / O-nasta riittää.

I / O-signaalit

Isäntäprosessori aloittaa signaalit, joita BDM käyttää tiedon välittämiseen kohteelle ja kohteesta. Isäntä nollaa siirtolinjan ja sitten joko

  • Asettaa rivin nopeammin, tulostaa 1,
  • Asettaa rivin myöhemmin tulostaaksesi nollan,
  • Tri-tila ilmoittaa tuotoksensa, jolloin kohde voi ajaa linjaa. Isäntä voi tunnistaa arvon 1 tai 0 tuloarvoksi.

Seuraavan bitin alkaessa isäntä nollaa siirtolinjan ja prosessi toistuu. Jokainen bitti kommunikoidaan tällä tavalla.

Toisin sanoen nykypäivän ohjelmistojen ja laitteistojen suunnittelun kasvava monimutkaisuus johtaa uusiin lähestymistapoihin virheenkorjaukseen. Pii-valmistajat tarjoavat yhä enemmän sirujen virheenkorjausominaisuuksia uusien prosessorien jäljittelemiseksi .

Tämä kyky, joka on toteutettu useissa prosessoreissa sellaisilla nimillä kuin taustavirheen tila (BDM), JTAG ja piirissä oleva piirien sisäinen emulointi , asettaa perusvirtaustoiminnot itse sirulle. BDM (1-johdinrajapinta) tai JTAG (tavallinen JTAG) vianetsintäportilla voit ohjata ja seurata mikro-ohjainta pelkästään vakaajen sirujen virheenkorjauspalveluiden avulla.

Tämä virheenkorjaustila toimii myös silloin, kun kohdejärjestelmä kaatuu, ja antaa kehittäjille mahdollisuuden jatkaa kaatumisen syyn tutkimista.

Mikrokontrollerien sovelluskehitys

Hyvä kehitystyökaluympäristö on tärkeä kokonaisen kehittämisajan ja kustannusten vähentämiseksi. Käyttäjät haluavat debug-sovellusohjelmansa olosuhteissa, jotka imitoivat järjestelmän todellista asennusta. Tämän vuoksi vaaditaan kyky virheenkorjaus käyttäjän ohjelmaan todellisessa kohdejärjestelmässä. Tätä kutsutaan piirien sisäiseksi virheenkorjaukseksi . Lisäksi useimmissa uusissa MCU: issa on haihtumaton muisti, kuten flash-muisti, joten myös kohdejärjestelmän ohjelmointikoodi vaaditaan. Tätä kutsutaan piirien sisäiseksi ohjelmointiin .

Piirien sisäisten virheenkorjaus- ja ohjelmointivaatimusten tukemiseksi HC08-perheellä on näyttötila ja HCS08 ja RS08 käyttävät taustavirheen tilaa (BDM). HCS08: n taustavirheen laitteisto koostuu taustavirheenohjaimesta (BDC) ja virheenkorjausyksiköstä (DBG). RS08: n taustavirheen laitteisto koostuu vain taustavirheenohjaimesta (BDC).

BDM-komennot

BDM-isäntä voi antaa komentoja parametreilla kohteelle. Jotkut komennot sallivat kohteen muistilohkojen lukemisen tai kirjoittamisen, CPU: n yksittäiset rekisterit tai rekisterit, jotka eivät ole kohteen käytettävissä.

Esimerkkejä ovat:

BDM-komennot
READ_BYTE Lue tavu muistista
WRITE_BYTE Kirjoita tavu muistiin
GO Aloita / jatka suorittamista nykyisellä ohjelmalaskurin sijainnilla
WRITE_PC Kirjoita arvo ohjelmalaskurille
READ_PC Lue ohjelmalaskurin arvo
WRITE_X Kirjoita arvo hakemistorekisteriin
READ_X Lue hakemistorekisterin arvo
READ_SP Lue pinon osoittimen arvo

BDM-toiminnot

Kohdeosasta riippuen BDM-ohjaimessa voi olla laitteiston murtopisterekisteri . Rekisterissä on arvo, joka osoittaa osoitteen muistissa. Kun kohdeosan CPU käyttää kyseistä sijaintia muistissa, BDM-laitteisto voi ottaa kohdeosan hallintaan, lopettaa ohjelman suorittamisen ja aloittaa toiminnan taustamoodissa.

Viitteet