• No results found

Eindhoven University of Technology MASTER Een ISDN telefoonverbinding Rijnders, M.L.J.

N/A
N/A
Protected

Academic year: 2022

Share "Eindhoven University of Technology MASTER Een ISDN telefoonverbinding Rijnders, M.L.J."

Copied!
96
0
0

Bezig met laden.... (Bekijk nu de volledige tekst)

Hele tekst

(1)

MASTER

Een ISDN telefoonverbinding

Rijnders, M.L.J.

Award date:

1993

Link to publication

Disclaimer

This document contains a student thesis (bachelor's or master's), as authored by a student at Eindhoven University of Technology. Student theses are made available in the TU/e repository upon obtaining the required degree. The grade received is not published on the document as presented in the repository. The required complexity or quality of research of student theses may vary by program, and the required minimum study period may vary in duration.

General rights

(2)

Een ISDN telefoonverbinding

door M.L.l. Rijnders

Verslag van het afstudeerwerk verricht van maart 1993 tot en met oktober 1993.

Hoogleraar:

Begeleider:

Prof. ir.M.P.J. Stevens ir.M.J.M. van Weert

Eindhoven, Nederland

(3)

Lijst van afkortingen:

CCITT:

CODEC:

D-phone:

DLC:

DNIC:

DSC:

DSP:

DTMF:

DX:

EOD:

ICE:

ISO:

ITU:

LAN:

LIU:

MAP:

MPI:

MUX:

NT:

OSI:

PBX:

PC:

peM:

SNIC:

TA:

TE:

Comire Consultatif International de TeIegraphique et Telephonique COder and DECoder

Digital Telephone Data Link Controller

Digital Network Interface Circuit Digital Subscriber Controller Digital Signal Processor Dual Tone Multi-Frequency

Digital Time/Space Crosspoint Switch End Of Dma interrupt

In-Circuit-Emulator

International Standards Organisation International Teleconununications Union Local Area Network

Line Interface Unit Main Audio Processor Microprocessor Intelface Multiplexer

Network Termination

Open Systems Interconnection Private Branch eXchange Personal Computer Pulse Code Modulation

Subscriber Network Interface Circuit Tenninal Adapter

Tenninal Equipment

(4)

Samenvatting

De vakgroep Digitale Infonnatiesystemen van de Faculteit der Elektroteehniek van de Technische Universiteit Eindhoven verricht onderzoek aan het Integrated Services Digital Network (ISDN) dat door het CCITT is gedefmieerd. In verband met dit onderzoek werden twee Mitel ISDN Express Cards gekocht en werd een eigen ISDN terminal ontworpen en gebouwd. Op deze systemen is het mogelijk de ISDN protocollen, enkele zijn al gedeeltelijk in de hardware aanwezig, te implementeren.

De Mitel kaarten en het ISDN tenninal board kunnen onderling worden verbonden door een vierdraads Srr interface. Het is echter tot nu toe niet mogelijk geweest dit srr interface te gebruiken voor een telefoonverbinding tussen de Mitel kaarten onderling of tussen een Mitel kaart en het ISDN tenninal board. WeI kunnen we bij de Mitel kaarten het U-interface gebruiken voor het opzetten en verbreken van een telefoonverbinding.

Verder ontbreekt bij de ISDN software voor het terminal board de Call Control en Resource Management protocollen die zorgen voor het opzetten en verbreken van een telefoonverbinding en voor de selectie van de kanalen. Tevens ontbreekt de uitgebreide protocol monitor die bij de Mitel kaarten wordt gebruikt ter controle van de protocollen en die het zoeken naar fouten vergemakkelijkt.

Dit verslag beschrijft de software ontwikkelingen die voor de MITEL kaarten nodig waren om uiteindelijk gebruik te kunnen maken van het Srr interface voor het opzetten en afbreken van een ISDN telefoonverbinding.

Verder wordt er beschreven hoe de ISDN software voor het terminal board is gecontroleerd op fouten en verder is uitgebreid met de Call Control en Resource Management protocollen zodat ook het terminal board nu de mogelijkheid heeft om een telefoonverbinding via het Srr interface op te zetten.

Ook is de Monitoring Dispatcher van de MITEL kaarten met behulp van geemuleerde TURBO-C functies op het terminal board geiinplementeerd

Het is nu door deze nieuwe verbeteringen en uitbreidingen van de ISDN software op de beide systemen (MITEL kaarten en het ISDN terminal board) weI mogelijk geworden om een ISDN telefoonverbinding te maken tussen de MITEL kaarten onderling of tussen een MITEL kaart (met een nieuwe MITEL chip set voor de D-Phone en het SNIC) en het ISDN terminal board.

(5)

Inhondsopgave

1. Inleiding - 1

2. Integrated Services Digital Network (ISDN) ..••...•.••.•..•.••.••..•.-•• 4

2.1 Standaarden 2.2 Diensten

2.3 ISDN architectuur

2.3.1 User-Network interface 2.3.2 Transmissie structuren 2.4 Samenvatting

4 5 6 6 8

10 3. ISDN hard· en software···.•.••.•.• 11

3.1 De Mitel ISDN Express Card

3.1.1 De Digital Telephone (D-Phone)

3.1.2 De Digital Time/Space Crosspoint Switch (OX) 3.1.3 De Digital Network Interface Circuit (ONIC) 3.1.4 De Subscriber Network Interface Circuit (SNIC) 3.2 Het ISDN terminal board

3.2.1 De Programmeble Interrupt Controller (PIC) 3.2.2 DeDigital Subscriber Controller (DSC)

3.2.3 DeIntegrated Data Protocol Controller (IOPC) 3.3 Het besturingssysteem

3.4 Samenvatting

11 12 14 15 16 19

20

21 22 23

26 4. Software ontwikkeling t.b.v. het Mitel SiT interface ···-27

4.1 De protocol timers 4.2 De low-level drivers

28

29

(6)

4.3 Een telefoonverbinding via de SNIC 33

4.3.1 De laag 3 call states 33

4.3.2 Het opzetten en afbreken van een telefoonverbinding 37

4.4 Samenvatting 39

5. Software debugging van het ISDN terminal board ••.••••.••••••••••••• 41

5.1 Verschillen tossen de Intel C en Turbo C++ compiler 5.2 Conversiefouten

5.3 Fouten in de low·level device drivers 5.4 Samenvatting

42 44 49 53

6. Software ontwikkeling

Lb.

v. het ISDN terminal board •.•..•...•...•.. 54

6.1 Call Control en Resource Management

6.2 De Window·Protocol·Monitor voor een ANSI terminal 6.3 Samenvatting

54 58 61

7. Conclusies en aanbevelingen •...•..•...•...•••..•..•.•..•.•.••••.••.•..•••.•. 62 Literatuurlijst .•....•.••••••..•••..•••••••..•.•..•.•..••.••.•..••.•.••.••...••.•.•.•• 65

Bijlage 1: Het literatuuronderzoek 68

Bijlage 2: Extra fundies van de Monitoring Dispatcher voor het terminal board ••.•...••.•••..••••...•••.•.•..•••..•.•.•....•...•••..•• 80

Bijlage 3: Het gebruik van Turbo C++, Intel C en ICE ...••••••...•.•.••. 81

Bijlage 4: Programma functies •...•.•.••.••••..••.•.•.•..•..••..••••.••..•.••••• 85

(7)

1. Inleiding

De snelle vooruitgang in de computer en communicatie technologie resulteerde in een vergaande integratie van beide gebieden. Hierdoor worden tegenwoordig voor de transmissie van data, spraak en beeld dezelfde digitale technieken gebruikt. Deze ontwikkeling en de vraag naar een efficienter en krachtiger communicatienetwerk hebben geleid tot de ontwikkeling van een geYntegreerd systeem dat alle soorten data lean verwerken, genaamd Integrated Services Digital Network (ISDN). Het systeem is bedoeld ter vervanging van de bestaande data-, telefoon-, radio- en uiteindeJijk de televisienetwerken. Voor deze laatste groep zijn de ISDN specificaties echter te behoudend, zodat nu al gewerkt wordt aan de definitie van het Broadband ISDN. Op deze laatste ontwikkeling zullen we echter niet verder ingaan.

De defmities van het ISDN, de hardware en de communicatieprotocollen, zijn vastgelegd door het Comite Consultatif International de TeIegraphique et Telephonique (CCITf). In de aanbevelingen van deze instantie zijn ook een groot aantal diensten vastgelegd die via een digitale ISDN aansluiting kunnen worden geleverd.

De belangrijkste aansluiting die gedefinieerd is, wordt de 'basic access' genoemd en bestaat uit twee B-kanalen, beide 64 Kbit/s, en een D-kanaal van 16 Kbit/s. De B-kanalen kunnen worden gebruikt voor digitale data, PCM-gecodeerde digitale spraak, of verscheidene kanalen met een lage snelheid, een fractie van de 64 Kbit/s, data en gecodeerde spraak.

Het D-kanaal dient voor de 'Common-Channel-Signaling (CCS)' en 'packet switching' tijdens pauzes in de signalering. We kunnen dus met deze basis aansluiting gebruik maken van alle ISDN diensten waaronder de aansluiting van een ISDN telefoon, de belangrijkste dienst die in dit verslaggeb~gaat worden. [1]

De vakgroep Digitale Informatiesystemen van de Faculteit der Elektrotechniek van de Technische Universiteit Eindhoven verricht ook onderzoek aan ISDN. In verband met dit onderzoek zijn twee Mitel ISDN Express Cards gekocht en werd een eigen ISDN terminal ontworpen en gebouwd [3]. Op deze systemen is het mogelijk de ISDN protocollen, enkele zijn al gedeeltelijkin de hardware aanwezig, te implementeren [4] zodat ervaring kon worden opgedaan met enerzijds het ISDN zelf, en anderzijds met de ontwikkeling van grotere software implementaties volgens het 'Open Systems Interconnection (OSI)' model van het International Standards Organisation (ISO).

(8)

De Mitel kaarten en het ISDN tenninal board kunnen onderling worden verbonden door een vierdraads srr interface. Het is echter tot nu toe niet mogelijk geweest dit srr interface te gebruiken voor een verbinding tussen de Mitel kaarten onderling of tussen een Mitel kaart en het tenninal board.

Inhet eerste geval, dus bij een verbinding tussen de MITEL kaarten, ging door het telkens weer optredende synchronisatieverlies [8] data verloren. De cornrnunicatieprotocollen moesten daarom vele malen hetzelfde datapakket herhalen totdat uiteindelijk het datapakket foutloos werd ontvangen door de andere MITEL kaart. Een datapakket kwam daardoor pas na minuten op de plaats van bestemming aan. WeI kunnen we bij de Mitel kaarten het V-interface gebruiken voor het opzetten en verbreken van een telefoonverbinding zoals door I.R.H. Claessens [10] wordt beschreven. Het gebruikte V- interface, een tweedraads verbinding, is echter Diet op het tenninal board aanwezig.

In het tweede geval bleek dat een spraakverbinding tussen een MITEL kaart en het tenninal board van een zeer slechte kwaliteit was. Dit werd bij het implementeren en testen van het S-interface en het telefoon-interface van het tenninal board [7] met behulp van speciale testprogramma's ontdekt.

Een ander probleem bij het terminal board is het ontbreken van de Call Control en Resource Management software die zorgen voor de selectie van de kanalen en voor het opzetten en verbreken van een telefoonverbinding. Tevens ontbreekt de uitgebreide protocol monitor die bij de Mitel kaarten wordt gebruikt ter controle van de protocollen en het zoeken naar fouten vergemakkelijkt Verder moet de ISDN software nog gecontroleerd worden op fouten.

De afstudeeropdracht om het srr interface te gebruiken voor het opzetten en verbreken van een telefoonverbinding tussen de Mitel kaarten onderling, en tussen een Mitel kaart en het ISDN terminal board omvat dus een groot aantal onderwerpen, op hard- en software gebied, die aangepakt moeten worden om de bovengenoemde problemen te kunnen oplossen. Deze onderwerpen zijn in de volgende hoofdstukken terug te vinden.

In hoofdstuk 2 worden eerst een aantal basisbegrippen en standaarden voor ISDN besproken. Hoofdstuk 3 behandelt de twee verschillende ISDN hardware configuraties die aanwezig zijn, de Mitel ISDN Express Card en het ISDN tenninal board. In hoofdstuk 4 komt de software voor het Mitel Srr interface ter sprake waarna in hoofdstuk 5 de software debugging voIgt van het terminal board. De implemematie van de Call Control en Resource Management software, en de verbeterde protocol monitor komeninhoofdstuk 6

(9)

aan de beurt. Als afsluiting volgen de conc1usies en aanbevelingen. In de bijlagen kunnen nog enkele belangrijke feiten worden teruggevonden.

(10)

2. Integrated Services Digital Network (ISDN)

Door het groeiende aantal vonnen van communicatie en de snelle vooruitgang in deze techniek, is de belangrijkste infrastructuur, het telefoonsysteem, minder geschikt geworden. De vraag naar een efficienter en krachtiger communicatienetwerk heeft geleid tot de ontwikkeling van een gei."ntegreerd en volledig digitaal systeem dat alle soorten data kan verwerken, genaamd Integrated Services Digital Network (ISDN).

Voor de standaardisatie van ISDN zorgt het Comire Consultatif International de Telegraphique et Telephonique (CCITT), een comire van de International Telecommunications Union (ITU). In de volgende paragraaf voIgt een klein overzicht van deze standaarden.

In die standaarden zijn ook een groot aantal diensten vastgelegd die via een digitale ISDN aansluiting kunnen worden geleverd. Een samenvatting van de gedefinieerde diensten voIgt in paragraaf 2.2. In de laatste paragraaf bespreken we het interface tussen een ISDN gebruiker en het ISDN netwerk.

2.1 Standaarden

Bet gebruik van standaarden is'bij de introductie van een complex systeem zoals ISDN van groot belang. De compatibiliteit met het netwerk is gegarandeerd zolang men zich aan deze standaarden houdt.

In 1984 worden de eerste aanbevelingen, of standaarden, door de CCITT uitgegeven, de zogenoemde 'I-series of recommendations' in de Red Books [2]. In 1988 voIgt een completere set aanbevelingen in de Blue Books. De aanbevelingen zijn volgens de structuur van figuur 2.1 ingedeeld en vormen samen met de Q- en X-series Recommendations de basis van ISDN.

Figuur 2.1: Structuur I-serie.

(11)

De protocollen die zorgen voor de communicatie tussen de gebruikers en tussen een gebruiker en bet netwerk, zijn zoveel mogelijk gemodelleerd naar bet OSI referentiemodel, een standaard van bet ISO. De relatie tussen de ISDN protocollen en het OSI-model zijn in het onderstaande figuur terug te vinden en vonnen bet User-Network interface. Ben uitvoerige beschrijving van het OSI-model is terug te vinden in [1].

We zien dat het Layer 1 protocol zorgt voor het multiplexen van het D-kanaal en de B- kanalen. Voor het gebruik van het B-kanaal zijn bij een circuit-geschakelde verbinding (b.v. een spraakverbinding) verder geen protocollen vastgelegd, ieder gewenst protocol kan voor de bogere lagen gekozen worden. Voor de signalering over het D-kanaal wordt echter op laag 2 nog het LAPD protocol en op laag 3 het CallControl protocol gebruikt.

De lagen 4

tim

7 worden verder gebruikt voor de 'End-to-end user signaling'.

Layer':

AH':&atiOD Layer 6:

_.

Ead-to-cad

LayerS:

....

ScaiOB msaalillg

Layer 4:

Tnasport

- - - -

Layer 3: Can(;Qotrol X2S

I

FUIthtt X2S

_erik

L4S1 PacJo:tlavd "udy PacJo:tlavd

Layer 2: X2S

o..aliat L\P-D (l44I)

L\P-B Layer I:

Layer 1 (1.430. L(31) PIlysical

I

Qn:::uil

I

Lc...d Packot

$g1la1 Packot Tclcmeuy

swircbing

swiIolUag CUCW

D-awlI>el 8·Cbanncl

Figuur 2.2: De gelaagde protocol structuur van het ISDN User-Network interface.

2.2 Diensten

ISDN zal een groot aantal nieuwe diensten kunnen leveren maarzaltevens de al bestaande toepassingen van spraak- en datacommunicatie blijven ondersteunen. Door de CelTI zijn drie soorten diensten gedefinieerd, namelijk:

• Bearer Services: deze diensten geven de mogelijkheid om infonnatie (spraak, data, video, enz.) over te dragen zonder verandering van de inhoud of

(12)

vertraging (real time) van een bericht. Deze diensten corresponderen met de onderste 3 lagen (physical, data link en network layer) van het OSI model.

Enkele voorbeelden van bearer services (1.211) zijn:

- 64 kbitls, 8 kHz structured, unrestricted (circuit-mode service) - 64 kbitls, 8 kHz structured, speech (circuit-mode service) - virtual call and pennanent virtual circuit (packet-mode service)

• Teleservices: de teleservices combineren de transport functie met de infonnatie verwerkende functie. De bearer services zorgen voor het transport van de data terwijl een aantal extra functies in de hogere lagen (lagen 4

tim

7) zorgen voor de infonnatieverwerking. Voorbeelden van teleservices zijn:

- telefonie - teletex - videotex

• Supplementary services: supplementary services zijn services die alleen sarnen met een of meer vail de bovenstaande diensten kunnen bestaan. Het zijn uitbreidingen van de bearer of teleservices. Voorbeelden van deze services zijn:

- user-to-user signaling

- call forwarding unconditional - closed user group

Indeze drie categorieen zijn een aantal specifieke diensten, waarvan hierboven enkele zijn genoemd, door het CCITI gedefinieerd. Deze verschillende diensten onderscheiden zich door hun functies en mogelijkheden. Deze functies en mogelijkheden worden vastgelegd door waarden die aan een aantal vaste attributen (1.130) worden meegegeven.

2.3 ISDN architectuur

2.3.1 User-Network interface

In figuur 2.2 hebben we de gelaagde structuur van het User-Network interface al kunnen zien. Analoog aan deze gelaagde structuur worden door het

ccnT

een aantal functionele groepen en referentiepunten gegeven die de eisen van een gebruikersinterface vastleggen.

De functionele groepen bevatten nu de fysische apparatuur, eventueel opgebouwd uit

(13)

meerdere afzonderlijke apparaten. De referentiepunten worden gebruikt als scheiding tussen de functionele groepen. Voor ieder referentiepuntkan nu een interface standaard worden opgesteld.

Voor ISDN worden nu de onderstaande groepen gebruikt:

• Network termination I (NTl) : deze groep bevat functies die, analoog aan laag 1 van het OSI model, zorgen voor de fysische en de elektrische afsluiting van ISDN aan de gebruikerszijde en geeft een nieuwe fysieke aansluitmogelijkheid voor gebruikersapparatuur. Tevens geeft de NTl onderhoudsfuncties voor het transmissiemedium. De NTI zorgt verder nog voor het multiplexen van de kanalen (2 x B + D) en laat het aansluiten van meerdere apparaten toe ('multidrop arrangement').

• Network termination 2 (NT2) : deze groep is functioneel analoog aan de lagen 1,2 en 3. De NT2 bezit schakel- en concentratie functies. Voorbeelden van een NT2 zijn: een digitale PBX, een terminal controller en een LAN.

• Terminal equipment type 1 (TEl) : deze groep heeft betrekking op die apparatuur die het standaard ISDN interface ondersteunen, bijvoorbeeld:

digitale telefoon, gei"ntegreerde spraak/data tenninals en digitale facsimile apparatuur.

• Terminal equipment type 2 (TE2) : in tegenstelling tot de bovenstaande groep bevat deze de al bestaande niet-ISDN compatibele apparatuur zoals terminals met RS232 interface en computers met X.25 interface. De TE2 apparatuur heeft de TA groep nodig om op ISDN aangesloten te kunnen worden.

• Terminal adapter (TA) : de terminal adapter groep verzorgt de omzetting van ISDN naar niet-ISDN en omgekeerd en wordt op een ISDN interface aangesloten.

Tussen deze groepen zijn de volgende referentiepunten gedefinieerd:

• U-referentiepunt: dit interface (het 'user'-referentiepunt) beschrijft het full- duplex data signaal dat door het netwerk of door de gebruiker ffioet worden gebruikt bij een verbinding tussen heide. Verder is dit interface of referentiepunt niet gedefinieerd door het CCITT in de aanbeveling 1.41l.

• T-referentiepunt : het 'terminal'-referentiepunt komt overeen met een

(14)

minimale ISDN netwerkafsluiting aan de gebruikerszijde. Het scheidt de netwerkapparatuur van de gebruikersapparatuur.

• S-referentiepunt: het 'system'-referentiepunt komt overeen met het interface van de individue1e terminals. Dit interface scheidt de terminalapparatuur van de functies die voor de netwerkcommunicatie zorgen.

• R-referentiepunt: het 'rate'-referentiepunt zorgt voor een niet-ISDN interface tussen de gebruikersapparatuur die niet-ISDN compatibel is en de terminal adapter. Het interface komt veelal overeen met de aanbevelingen uit de X of V series CCnT Recommendations.

De relatie tussen de bovenstaande functionele groepen en de referentiepunten is in figuur 2.3 terug te vinden. Later zien we dat het Sen T referentiepunt kunnen samenvallen zodat het

srr

interface ontstaat.

( TEl

H = H

NTI

J---t-

(=HTA~

o

functionelegroep

---+---

referentiepunt

Fig. 2.3 : ISDN referentiepunten en functionele groepen

2.3.2 Transmissie structuren

Een digitale aansluiting van ISDN bevat een aantal communicatiekanalen. De capaciteit van de aansluiting, dus het aantal kanalen, kan varieren per gebruiker, maar de structuur van elke aansluiting bestaat uit de volgende soorten kanalen:

• Bkanaal: 64 Kbitls

• Dkanaal: 16 of 64 Kbitls

• H kanaal: 384, 1536, of 1920 Kbitls

Het B-kanaal is een kanaal voor de gebruiker dat kan worden gebruikt voor de overdracht van digitale data, PCM-gecodeerde digitale spraak, of een combinatie van dataverkeer met

(15)

een lagere transmissiesnelheid Drie verschillende soorten verbindingen kunnen met dit kanaal worden opgezet, namelijk: circuit-switched, packet-switched, semi-permanent.

Het D-kanaal heeft twee functies. De eerste functie van het kanaal is de overdracht van de 'Common-Channel-Signaling' (CCS) infonnatie om de 'circuit-switched' verbindingen van deB-kanalen mogelijk te maken. Het kanaalkan verder nog worden gebruikt voor packet- switching of voor lage snelheid telemetrie indien geen signaleringsinformatie verzonden moet worden.

Het H-kanaal worden gebruikt voor data met een hogere bitsnelheid. De gebruiker kan dit kanaal als een 'high-speed trunk' gebruiken of kan het indelen volgens een eigen TDM systeem.

De best gedefinieerde digitale aansluitingen zijn de 'basic access' en 'primary access'. Deze bestaan uit een aantal van de bovenstaande kanalen zoals we ookinfiguur 2.4.

I. BASICSERVI<E Role,192kbiI/I Composilioo:B+B+D d 1 _

+ I)"acbroaizatiooaDdframing

} 1Dfonnaaon: yoWe, data

2. PRIMARY SERVI<E Rat., 1.5442/2.048 MbWo Composilioa: 2.048 Mbil/I:

1.:544 Mbi/JI:

()

() ~

30 B ehaaaelJ .. 64KIDI/I ....

1 De.aallC1 al64 Kbil/I 23 B ehaBaelJ" 64Kbills ....

1 DehaBlIC1a164KI>iI/,

)::

:c:}

D I

Fig. 2.4 : ISDN kanaal structuren

De 'basic access', bedoeld voor kleine gebruikers, bestaat dus uit twee full-duplex 64 Kbit/s B-kanalen en een full-duplex 16 Kbit/s D-kanaal, zodat de totale bitrate 144 Kbit/s bedraagt. Door het gebruik van framing, synchronisatie en andere extra bits wordt de uiteindelijk bitrate 192 Kbit/s. Met deze basiskanalen, is het mogelijk om gelijktijdig een spraak- en meerdere data-applicaties te gebruiken zoals een 'packet-switched' verbinding, facsimile, teletex, enz.. Toegang tot deze diensten kunnen we verkrijgen door een multifunctionele terminal of door verschillende terminals. Beide mogelijkheden maken gebruik van maar een fysische connector.

De 'primary access', bedoeld voor gebruikers die een grotere capaciteit nodig hebben (b.v.

een bedrijf met een digitale PBX of een LAN), geeft twee mogelijke bitrates, nameljjk:

(16)

• 1.544 Mbit/s: deze bitrate komt overeen met de T1 transmissiesysteem van AT&T en bevat 23 B-kanalen en 1 D-kanaal, alle 64 Kbit/s. Dit systeem wordt in de Verenigde Staten, Canada en Japan gebruikt

• 2.048 Mbit/s: deze bitrate komt overeen met het CEPT systeem en bevat 30 B-kanalen en 1 D-kanaal, al1e 64 Kbit/s. Het systeem wordt in Europa gebruikt Als een gebruiker meerdere 'primary' aans1uitingen heeft dan kan worden vo1daan met een D-kanaal op een van de aansluitingen. Ook ondersteunt deze aansluiting de H-kanalen zodat de volgende kanaalstructuren mogelijk zijn:

• Primary rate interface HO channel structures: deze heeft de structuur 3 HO + D of 4 HO bij 1.544 Kbit/s en 5 HO+D bij 2.048 Kbit/s.

• Primary rate interface HI channel structures: geeft 1 H11 kanaal van 1536 Kbit/s of 1 H12 kanaal van 1920 Kbit/s en 1 D-kanaal.

• Primary rate interface structures for mixtures of Band HO channels: deze structuur bestaat uit een eventueel D-kanaal plus iedere mogelijke combinatie van B- en HO-kanalen tot de capaciteit van het fysische interface bereikt wordt

2.4 Samenvatting

In dit hoofdstuk is een overzicht gegeven van de standaarden die bij het ISDN gebruikt worden. Verder worden de ISDN communicatieprotocollen en hun onderlinge relatie in het User-Network interface met behulp van het OSI-model verduidelijkt.

Tevens is een korte uitleg gegeven van de drie soorten diensten, bearer services, teleservices en supplementary services, die door het CCIrr voor het ISDN zijn gedefinieerd. De telefoonfunctie behoort tot de zogenaarnde teleservices.

Verder worden de best gedefinieerde kanaalstructuren die aan een gebruiker kunnen worden aangeboden, de 'basic access' en de 'primary access', besproken. Ook het daarbij gebruikte model van het CelIT voor het User-Network interface komt ter sprake.

Bij de implementatie van de telefoonfunctie gaan we gebruik maken van de al genoemde 'basic access' aansluiting op het Sf[ referentiepunt. Deze digitale aansluiting geeft bij een bitrate van 192 Kbit/s toegang tot twee B-kanalen en een D-kanaal.

(17)

3. ISDN hard- en software

De vakgroep Digitale Informatiesystemen van de Faculteit der Elektrotechniek van de Technische Universiteit Eindhoven heeft voor het onderzoek aan ISDN twee Mitel ISDN Express Cards gekocht. Ook werd een eigen ISDN tenninal ontworpen en gebouwd [3]

die gebruik maakt van de AMD ISDN IC set. Op beide systemen is het mogelijk de ISDN protocollen te implementeren. Enkele protocollen, vooral van de OSI lagen 1 en 2, zijn al geheel of gedeeltelijkinde hardware aanwezig.

In de volgende paragrafen voIgt eerst een beschrijving van de MITEL kaarten, waarna de beschrijving van het terminal board voIgt. Als laatste wordt de beschikbare software voor deze systemen behandeld

3.1 De Mite) ISDN Express Card

De MITEL ISDN Express Card [19] bestaat uit een aantal gespecialiseerde ISDN IC's van MITEL [20] die onderling zijn verbonden door een seriele Time Division Multiplexed (TDM) bus, de MITEL ST-bus™.

De MITEL kaart beschikt over twee 'basic access' interfaces, een voor het

srr-

referentiepunt het zogenaamde 'Subscriber Network Interface Circuit' (SNIC), en een voor het U-referentiepunt het zogenaamde 'Digital Network Interface Circuit' (DNIC).

De twee aanwezige 'primary access' interfaces ondersteunen de twee toegestane bitrates van deze aansluiting, een 'Tl digital trunk interface' (1.544 Kbit/s) en een 'CEPT trunk interface' (2.048 Kbit/s).

Verder is er nog een telefoon interface voor de aansluiting van een telefoonhoom.

Over het PC interface kuooen alle componenten van de MITEL kaart bestuurd en gecontroleerd worden.

De componenten kuooen door de 'Digital Time/Space Crosspoint Switch' (DX) aan elkaar gekoppeld worden via het ST-bussysteem. Met behulp van de HDLC-controllers is het mogelijk de datastroom tussen de DX en de SNIC volgens het HDLC-protocol te laten verlopen.

Tevens bevat de kaart een klokgenerator en DPLL die het kloksignaal voor de gehele kaart verzorgt. Als de MITEL kaart als NT (Master Mode) dienst doet dan wordt de

(18)

klokgenerator als bronsignaal voor de verschillende interfaces gebruikt voor het opwekken van de framesynchronisatie. De klok wordt bij deTE mode (Slave Mode) met behulp van eenPLLuit een van de binnenkomende signalen afgeleid

De modes die voor de SNIC en DNIC mogelijk zijn definieren de uitgaande en inkomende bitstroom die weI dezelfde bitrate hebben maar niet geheel dezelfde informatie-inhoud De bovenstaande kaart structuur is in figuur 3.1 als blokschema getekend.

T1 trunk

SNIC S-interface 1.544 Mbit/s 23B+D

Clock Generator andDPlL Digital

Phone

~

1IUDkCEPr

~

2.048 Mbit/s Digital

30B+D Q-osspoint

Switch

DNIC

3

U-interface

2B+D

Fig. 3.1 : Blokschema van de MITEL ISDN Express Card

In de volgende paragrafen behandelen we de achtereenvolgens de digitale telefoon, de crosspoint switch, het DNIC en het SNIC. De andere componenten zijn in dit verslag van ondergeschikt belang.

3.1.1 De Digital Telephone (D.Phone)

Het digitale telefoon interface wordt op de MITEL kaart met behulp van de MT8994/5B

(19)

verwezenlijkt (zie figuur 3.2). De belangrijkste functies van de digitale telefoon (D-Phone zijn:

• Jl-Iaw codec (MT8994B) of A-law codec (MT8995B)

• programmeerbare ontvangstversterker

• DTMF- en toongenerator

• speakerphone mogelijkheden

• interface voor standaard telefoon transducers

• sense/drive poorten voor een toetsenbord of display

VDO vss Nt:: Vref <XlDllCn M1C

DSTo

om

Iligi""

Signal P'roceI80r

C-<:hannel Serial-I<>- Parallel Cnoverrer

Oli FOi

- - - - ,

A D O l 2 3 4 S 6 7

funsducer In",uec..

Ie WD

VSSSPKR

M+

M.

HSPKR+

HSPKR- SPKR+

SPKR-

SIlO SOl SID SOl SDI

S~

SD6

Fig. 3.2 : Blokschema van het digitale telefooncircuit

De D-Phone kan door een microprocessor met een Intel of Motorola compatibel busstructuur worden bestuurd via het microprocessor interface. Er zijn voor de besturing een ll-tal registers beschikbaar.

Bet gei'ntegreerd telefooncircuit converteert de analoge signalen naar digitale PCM en omgekeerd door gebmik van een codec. De codec in deze chip versie zou moeten voldoen aan de gestelde eisen in G.?11 voor een Jl-Iaw codering aangezien op de MITEL kaart de MT 8994B is geYnstalleerd.

Bet signaal dat van de hoom binnenkomt op de pinnen M+ en M- wordt eerst gefilterd en op 8 kHz gesampeld, waarna het signaal door een

AID

converter en de codec in een digitale PCM-code wordt omgezet die weer naar de DSP wordt gestuurd. Door de DSP

(20)

(digital signal processor) kan het signaal verder geoptimaliseerd worden. Vervolgens kan het digitale signaal op de seriele ST-bus worden gezet, zodat de andere componenten op de MITEL kaart de data kunnen verwerken.

Inhet ontvangstpad wordt de seriele data van de ST-bus inomgekeerde richting verwerkt en via enkele extra versterkers en een D/A-converter met uitgangsfilter op de HSPKR+/HSPKR- gezet.

De DSP heeft drie mogelijk algoritrnen: het speakerphone algoritrne, een tone-ringer algoritme en een DTMF/tone generator algoritrne. Het speakerphone algoritme geeft de mogelijkheid om handsfree te telefoneren. De zend en ontvangstversterkers werken complementair en half-duplex. De versterkers worden dus afwisselend aan en uit geschakeld en weI zodanig dat er hooguit een actief is. Het algoritme bepaalt welke versterker wordt aangeschakeld door het vergelijken van de inkomende en uitgaande signaalniveaus.

Met het tone-ringer algoritme kan er een tweetonig belsignaal worden opgewekt, dat met behulp van een besturingsbit aan of uit kan worden geschakeld. De DTMF/tone generator kan worden gebruikt voor 'in-band' signaleringen. De DTMF generator kan bijvoorbeeld gebruikt worden bij een gesproken informatiedienst waar door het intoetsen van een nummer een keuze moet worden gemaakt. De verschillende nummers kunnen dan met behulp van de DTMF generator in specifieke tonen worden omgezet waarop de informatiedienstdankan reageren.

3.1.2 De Digital Time/Space Crosspoint Switch (DX)

De Digital Time/Space Crosspoint Switch (DX) , de MT8980D (zie figuur 3.3), wordt gebruikt voor het schakelen van de seriele data afkomstig van de andere componenten via de MITEL ST-bus. Ook dit

Ie

kan via een microprocessor interface worden bestuurd.

Deze bouwsteen voorzietin256 gelijktijdige verbindingen van iedere 64 kbitls. Elk van de acht seriele ingangen en uitgangen bestaat uit 32 kanalen van ieder 64 kbitls die samen een 2048 kbitls ST-bitstroom vormen.

De aangesloten microprocessor ziet de DX als een stuk geheugen. Er kan worden naar de DX worden geschreven om verbindingen op te zetten tussen een willekeurig gekozen in- en uitgangskanaal of om rechtstreeks data over een kanaal te sturen. Door het lezen van

(21)

een geheugenlocatie kunnen de verbindingen worden gecontroleerd of data worden ontvangen.

SliO

sm

STI2 Sli3 STI4 STI5 STI6 STi7

Serial to Parallel Converter

Data Memory

C4i FOi VDD VSS

Output MUX

ODE

STaO STal STa2 STo3 STa4 STo5 ST06 STo7

DS csR/WA> orA 07- CSTo

AO DO

Fig. 3.3 : Blokschema van de DX

Het DATA-geheugen wordt gevonnd door de 8 streams

*

32 kanalen = 256 8-bits

woorden die het aantal mogelijk te schakelen kanalen omvat. Naast dit DATA-geheugenis er een CONNECI10N-geheugen, opgesplitstineen HIGH en LOW gedeelte. Met HIGH- connection geheugen kan een specifiek kanaal worden gecontroleerd. In het LOW gedeelte wordt de connectie vastgelegd door een adres van het datageheugen op deze plaats te schrijven. Het DATA-geheugen geeft dus het ingangskanaal terwijl de plaats in het LOW- connection geheugen het uitgangskanaal aangeeft.

3.1.3 De Digital Network Interface Circuit (DNIC)

Het Digital Network Interface Circuit (DNIC) geeft een aansluiting voor het U- referentiepunt (zie figuur 3.4). Omdat het CCITT geen aanbevelingen voor dit referentiepunt geeft, heeft MITEL zelf een transmissiesysteem opgezet dat gebruik rnaakt van echo-cancellation technieken am een full-duplex signaal over twee draden te kunnen verzenden.

De belangrijkste kenmerken van de DNIC, de MT8972, zijn:

(22)

• full-duplex digitale transmissie over een enkel twisted aderpaar

• twee bitrates : 80 kbit/s (B +D) of 160 kbit/s (2 B+D)

• tot5 KInop 80 kbit/s en 4 KInop 160 kbit/s

• MITELST-bus compatibel

We zien dat het IC alleen de 'basic access' aansluiting kan ondersteunen indien een bitrate van 160 kbit/s wordt gekozen zodat beide B-kanalen en het D-kanaal kan worden verzonden.

De DNIC heeft drie seriele poorten: de DV (Data/Voice) poort, de CD (Control/Data) poort (wordt door MITEL Diet gebruikt) en de Lijn poort (Lin, LouV' De informatie van de DV poort (ST-bus) wordt nu door het IC op de Lijn poort (twisted-pair) gezet en omgekeerd.

DSliIDi

CDSTIICDi

!'WaD

Cirrcx

roo/RCK MW MSI MS2

\l<sC

DSToIDo

CDSTo/CDo

VDD VSS Vbi ..

OOfc=tWly Eo<:ode<IBipb...

Receive:

Vrd

oso

OSCI

Fig. 3.4 : Blokschema van het Digital Network Interface Circuit

3.1.4 De Subscriber Network Interface Circuit(SNIC)

Het Subscriber Network Interface Circuit (SNIC) geeft een aansluiting voor het

Srr-

referentiepunt (zie figuur 3.5).

De belangrijkste kenmerken van de SNIC, de MT8930, zijn:

(23)

• CCnT 1.430

srr

interface

• full-duplex 2 B+D, 192 kbit/s bitrate

• D-channel contention resolution

• link activation/deactivation

• point-to-point, point-to-multipoint and star configuration

• NT of TE mode

• On-chip HOLC D-kanaal protocoller

• MITEL ST-bus compatibel

• test mogelijkheden

De S-bus die door het IC wordt ondersteund is een vierdraads, full-duplex, time-division gemultiplexed transmissiesysteem dat data uitwisselt met 192 kbit/s. Bet frame bestaat uit 2 B-kanalen (64 kbit/s), een D-kanaal (16 kbit/s) en 48 kbit/s voor synchronisatie en overhead.

VDD VSS

DSTi LTx

S-Bus

DSTo ST-Bus Link Vbia.

Interface Interrace

LRx

Rlod C4b FOb STAP.j RsIO

NI'/TE

Rsti Cmode HALF ADll-1 R/W/ WR DS/RD AS/AlB CS IRQ, NDA

AFI'/PRl DinB PSC DCR DCack

Fig. 3.5 : Blokschema van de Subscriber Network Interface Circuit

De S-bus wordt met behulp van het 'link activation' protocol, een Layer 1protocol, (zie figuur 3.6) in gebruik genomen. Er vindt dan een uitwisseling van zogenaamde INFO berichten plaats tussen de NT en TE. [2] [20]

De beide B-kanalen en het D-kanaal kunnen pas gebruikt worden als de S-bus is geactiveerd. Het state-diagram dat bij de 'linkactivation' protocol hoort, isinfiguur 3.7 te Zlen.

(24)

Signals from NT to 1E Signals from TE to NT

InfoO NoSigna1 InfoO No Signal

Info! ConlinuousSignal of+'0',:rr andsix'l's

I I I I I

I I I

Info2 Validfram.8lIII<tUIewith 811B, D. D-echoend A bils IOIW'Ct

Info3 Validfume wi...datain B&:D bils

Inf04 ValidframewithdatainB, D, D-ec:b.ochannels. Bil Aill 101wI.

Fig. 3.6 : Ret 'Link Activation' protocol

1EState Actiyation DiallJ$UD

Met: BA=Bus Activity DR=Deactivation Requcsl AR=Activation Request Sync=Pramt:Sync Signal A=Activation bil TIDlO oul=32mBTimet Sigoal

NT State Activation Diawun

Fig. 3.7 : State-diagram van het 'link activation' protocol

(25)

De data die via de geactiveerde S-bus binnenkomt kan natuurlijk weer via de ST-bus verder worden gestuurd en omgekeerd van de ST-bus naar de S-bus. Het gehele IC wordt bestuurd door de registers die toegankelijk zijn via het microprocessor interface.

De aanwezig HOLC protocoller zorgt voor de protocol structuur van het D-kanaal zoals die in de laag 2 recommendations van het CCITT is vastgelegd.

3.2 Het ISDN terminal board

Het ISDN tenninal board dat werd ontworpen door P.I.G. Wetennan [3] kan worden aangesloten op een Sff-referentiepunt. Het is dus compatibel met de S-bus van het Subscriber Network Interface Circuit. De belangrijkste bouwstenen zijn :

• 80186 microprocessor

• 82258 Advanced DMA co-processor ( for extra DMA channels)

• 8288 bus controller en 8207 dynamic RAM controller

• 512 Kbytes dynamisch RAM, 128KROM

• 8259A-2 programmable interrupt controller (PIC)

• 82C55A-2 programmable peripheral device (parallel I/O port)

• AM79C30A Digital Subscriber Controller l'DSC) (ISDN Sff interface)

• 2

*

AM79C401 Integrated Data Protocoller (lDPC) (ISDN protocoller)

We zien dat het terminal board geen MITEL ISDN IC's gebruikt maar IC's van Advanced Micro Devices (AMD), maar beide voldoen aan de ISDN standaarden. WeI dienen de IC's op verschillende manieren te worden geprogrammeerd, de IC functies komen overeen maarde besturingsregisters niet.

De DSC zorgt voor het Sff-interface en voor een digitale telefoonaansluiting, het is een gecombineerde D-Phone en SNIC als we dit vergelijken met het MITEL ontwerp.

De IOPC omvat o.a. een Dual-Port Memory Controller (DPMC), een protocol-controller (LAPB, LAPD, DM!) en een Universal Synchronous/ASynchronous Receiverffransmitter (USART). Alleen het laatste onderdeel za1 voorlopig worden gebruikt om berichten en commando's van/voor de Monitor Dispatcher (zie ook latere hoofdstukken) over te brengen. Een tweede PC met RS232 interface en een tenninalprogramma (b.v. TELIX) wordt hiervoor gebruikt.

(26)

De processor en ROM is op het tenninal board vervangen door de Intel 80186/80188 In- Circuit-Emulator (ICE) [14] zodat het installeren van nieuwe software en het testen veel gemakkelijker kan worden gedaan (zie bijlage 3) met behulp van een PC en C-compiler.

Ook kan de parallelle poort worden gebruikt om de interne status van het board weer te geven, maar deze functie wordt overbodig door de verdere ontwikkeling van de Monitoring Dispatcher zoals uit latere hoofdstukken zal blijken.

De parallelle poorten bevinden zich op de I/O adressen 1000H en 2000H. De I/O adressen van de interne 80186 functies (timers, DMA en interrupt controller) zijn in het Intel data boek [15] terug te vinden.

De drie belangrijkste bouwstenen de PIC, de DSC en de IDPC bespreken we in de volgende paragrafen.

De geheugenindeling van het tenninal board is als voIgt:

Adres ComDonenten

COOOOH-FFFFFH ROM

84000H PIC

83000H DSC

82000H IDPC-2

81000H IDPC-l

80000H Advanced DMA

00000H-7FFFFH RAM

Tabe13.8 : Geheugenindeling van het terminal board

3.2.1 De Programmeble Interrupt Controller (PIC)

De interne interrupt controller van de 80186 wordt in cascade mode geprogrammeerd zodat de INTl/INT3lijnen van de microprocessor als interrupt request/acknowledge paar werken. De externe interrupt controller kan op deze lijnen worden aangesloten. Deze interrupt controller heeft acht extra lijnen waarop de volgende interrupts zijn aangesloten:

(27)

PIN BRON

IRQO DLC van IDPC-1

IRQ1 USART van IDPC-1

IRQ2 DLC van IDPC-2

IRQ3 DSC

IRQ4 EOD3 (exteme DMA)

IRQ5 EOD2 (exteme DMA)

IRQ6 EOD1 (exteme DMA)

IRQ? EODO (exteme DMA)

Tabe13.8 : De exteme interrupt bronnen

De PIC wordt geprogrammeerd met behulp van Initialization Command Words (lCW) en Operation Command Words dieinde databoeken van Intel terug zijnte vinden [16].

3.2.2 De Digital Subscriber Controller (DSC)

De DSC zorgt voor het Sff-interface en voor een digitale telefoonaansluiting, het is een gecombineerde D-Phone en SNIC als we dit vergelijken met het MITEL ontwerp.

De DSC bestaat uit 6 aparte blokken die ieder een specifieke taak verrichten: het MicroProcessor Interface (MPn, het OSCillator- en timingcircuit (OSC), de Data Link Controller (OLC), de MUltipleXer (MUX), de Main Audio Processor (MAP) en Line Interface Unit (LID).

De digitale data die van de S-bus binnenkomt wordt door de LIU omgezet in een handelbaar digitaal formaat. De S-bus is pas actief als er een activation request heeft plaats gevonden en is geaccepteerd. De digitale data kandandoor de MUX naar de verschillende blokken worden doorgeschakeld. Dit geldt natuurlijk ook in omgekeerde richting. Data die in een van de blokken wordt gegenereerd kan via de MUX naar het LIU worden verzonden.

Met de MUX kuooen maximaal drie bidirectionele verbindingen worden gelegd tussen de

(28)

blokken. Het D-kanaal van de LID (Sff-interface) wordt rechtstreeks naar de DLC doorgeschakeld. Deze zorgt ervoor dat de infonnatie-uitwisseling over het D-kanaal volgens het LAPD protocol verloopt. De DLC is op zijn beurt via de MPI toegankelijk.

CAPI CAn SBIN SBOUT SQ..K SFS HSW

AINA AREF A1NB EARl EAR2 LSI LS2

XTALI XTAL2 MQ..K

cs WR RD

Seriallnterfac:e MUX

DLC

MPI

0 0 1 2 3 4 5 6 7 INT A 0 1 2

Fig. 3.10 : Blokschema van de Digital Subscriber Circuit

LOUTl LOUTI LIN1 LIN2

RESET

De MAP is het digitale interface voor de aansluiting van een telefoonhooro. Dit onderdeel heeft de mogelijkheid DTMF signalen en aparte signaleringstonen te genereren. Verder is er voor het conditioneren van de ontvangen en verzonden data verschillende versterkers en programmeerbare fIlters aanwezig. Ben uitgebreide functie en register beschrijving kunnen we vinden in het AMD databoek [17]. De registers voor de verschillende componenten kunnen weer via een microprocessor interface gelezen en geschreven worden.

3.2.3 De Integrated Data Protocol Controller (IDPC)

De Integrated Data Protocol Controller (IDPC) bestaat uit de volgende onderdelen (zie figuur 3.11): de Data Link Controller (DLC), de Universal Synchronous/Asynchronous Receiverffransmitter (USART), de Dual-Port Memory Controller (DPMC) (deze wordt

(29)

niet gebruikt op het tenninal board en het MicroProcessor Interface (MPn.

Het enigste onderdeel van de IDPC dat gebruikt wordt, is de USART en het MPI. Over deze seriele verbinding (RS232) kunnen we de Monitoring Dispatcher bekijken en besturen. Op deze aansluiting wordt voor dit doel een PC aangesloten met RS232 interface waarop we een tenninalprogramma laten draaien (b.v. TELIX) dat ANSI-codes kan verwerken. De gekozen bitrate van dit interface is in ons geval afhankelijk van de gebruikte PC, maximaal2400 baud voor een XT-PC en 9600 baud voor een AT-PC op 12 MHz.

De DPMC wordt in zijn geheel niet gebruikt omdat voor een ander geheugen ontwerp is gekozen. De DLC kan later nog gebruikt worden bij het implementeren van eventuele data verbindingen over de B-kanalen met HDLC, LAPB, LAPD of DMI protocollen. [18]

r

I

I".... f-

-4 ... 10-

: ....

.... RIO

f- """

.... :: :

f- .... Cd -{ "

....

I-- 1 -... I--

...

Jt.ilRfQ

....

~ co. I,P .~:

f- I e.-.~... I

:DATA.UNECON'I'lOU..&R(t)I..C)

I I - - -

I ...RIO

_

....

1 - ~~

-~

Ix.,,,,,, r---1- r-- tlSA&T

=:

i-t;

I

c:...-_

I I,P I-

~~

I a.d..-a...-.- I-- i-

::;

uw:r ~:;

:::::

Du.ll.p~

::

...ayCcnrolllr

=:

"'''''J

I.

,. ,.

J. J.

,.

T

- - -

UWl11Nr uwm::u:

hQJ[

Ild)

""m

Ciiiiii iii lItCLI:our

Fig. 3.11 : De Integrated Data Protocol Controller

3.3 Het besturingssysteem

Op beide ISDN systemen wordt het protocol van de fysische laag door de hardware uitgevoerd zodat we voor de B-kanalen verder geen protocollen nodig hebben om de

(30)

digitale telefoon (zie figuur 2.2, B-channel, circuit-switched) te implementeren. We moeten aIleen de protocollen voor het D-kanaaI realiseren die door de CCITI gedefinieerd zijn.

De protocollen die door het CCITI worden voorgesteld, kunnen weergegeven worden door toestandmachines. Op iedere laag bevindt zich verder een aantal processen die allemaal een specifieke functie hebben. Deze zijn ook door toestandmachines weer te geven. Ieder proces bezit een aantal parameters en kan met andere processen communiceren door het gebruik van primitieven. De toestand van een proces verandert afhankelijk van de interne parameters en de binnenkomende primitieven. Deze toestandsverandering kan tot gevolg hebben dat dit proces zijn interne parameters verandert of zelf primitieven gaat verzenden en op deze manier weer andere processen beYnvloedt. Voor het beheer van deze processen, parameters en primitieven is een besturingssysteem nodig dat de volgende eigenschappen bezit:

• een snelle interrupt afhandeling

• een klein aantaI hardware interrupts

• beheren van een groot aantal processen

• prioriteiten per proces

Deze eigenschappen zijn doorH. Oudelaar [4] in een besturingssysteem geiinplementeerd.

Het besturingssysteem heeft een structuur zoals in figuur 3.12 is getekend.

MSG MSG

Fig. 3.12 : Structuur van het besturingssysteem

De berichten ('messages') die de onderlinge communicatie verzorgen, komen in wachtrijen

(31)

te staan met verschillende prioriteiten (0, 1 of 2). De 'dispatcher' vormt het hart van het besturingssysteem en verwerkt de berichten uit die wachtrijen waarbij de wachtrij met de hoogste prioriteit als eerste wordt verwerkt (laagste nummer en de laagste laag (1».

Daama komt pas de volgende wachtrij aan de beurt. Komt er een bericht binnen met een hogere prioriteitdanwordt deze meteen bij de volgende verwerkingsslag van de dispatcher verwerkt. De dispatcher kan uit de berichten het bestemmingsproces bepalen en het naar dit proces doorstur~nmits de toestand van het bestemmingsproces het toelaat.

De communicatie met de hardware geschiedt met interrupts die bij de MITEL kaarten door een timer en de SNIC, en bij het terminal board door een timer, de DMA, de IOPC's, en de DSC worden gegenereerd. Iedere interruptbron heeft een interrupt-service-routine waarin de precieze reden van het interrupt wordt onderzocht en verder wordt verwerkt door het evt. versturen van berichten naar de wachtende processen.

De processen hebben elk een datastructuur waarin de volgende parameters zijn opgenomen:

• de toegang tot het proces (BLOCKED of RUNNING)

• de prioriteit

• de huidige toestand ('state') van het proces en evt. een subtoestand

• procesparameters (max. 8 bytes)

AIle mogelijke toestanden waarin de verschillende processen kunnen komen zijn opgenomen in de toestandtabellen (state-tables). In deze tabellen worden aIle mogelijke berichten, die in een bepaalde toestand toegestaan zijn, gekoppeld aan verwerkingsroutines van het proces die deze berichten verder moeten afhandelen.

De berichten maken van een andere datastructuur gebruik:

• het type bericht

• proces waarvoor het bericht bestemd is

• proces waarvan het bericht atkomstig is

• bericht parameters (max. 5 bytes)

Inde vele protocollen zijn ook tijdslimieten gebruikt. De timers die voor deze protocollen zijn gedefinieerd worden bij MITEL/pC combinaties door een DOS interrupt steeds weer bijgewerkt. Op het terminal board wordt een interne 80186 timer gebruikt. De timers hebben de beschikking over de onderstaande velden:

• toestand van de timer (USED, FREE)

• de te verstrijken tijd

(32)

• het bericht dat verstuurd moet worden bij het verstrijken van de tijd

• proces dat de timer gebruikt, waarheen het bericht moet worden verstuurd

• laag 3: de huidige call

De bovenstaande berichten, processen en timers worden allen vanuit de dispatcher bestuurd. Om de protocollen te kunnen testen moeten we de dispatcher kunnen beYnvloeden. Daarom zijn er monitor routines geschreven waarmee direct processen, berichten, registers, interrupts, etc. bekeken, bestuurd en gecontroleerd worden. De meeste opties waren echter voorafgaand aan dit afstudeerprojekt nog met mogelijk op het terminal board

3.4 Sarnenvatting

In dit hoofdstuk hebben we de twee ISDN systemen beschreven die op de vakgroep Digitale Infonnatiesystemen aanwezig zijn. Beide systemen zullen worden gebruikt om een ISDN telefoonverbinding op te zetten via het

srr

interface.

Bij de MITEL kaarten moet de software voor het DNIC worden omgezet naar het SNIC, zodat voor een ISDN telefoonverbinding uiteindelijk het SNIC, de DX en de D-Phone worden gebruikt. De aanpassing van de ISDN software wordt beschreven in het volgende hoofdstuk.

Op het ISDN terminal board zijn voor deze telefoonverbinding een DSC en een IDPC aanwezig. De interrupts die door de verschillende tenninal-bouwstenen worden gegenereerd, komen binnen bij de besproken interrupt-controller (PIC).

Op beide ISDN systemen is het besturingssysteem geiinplementeerd dat door H. Oudelaar [4] is geschreven. Een aantal van de ISDN protocollen zijn met behulp van dit besturingssysteem al gerealiseerd, maar op het terminal board waren de Call Control I Resource Management protocollen en de uitgebreide Monitoring Dispatcher nog niet ge'implementeerd. Een beschrijving van deze implementatie voIgt in hoofdstuk 5 en 6.

(33)

4. Software ontwikkeling t.b.v. het Mitel SiT interface

De Mitel kaarten kunnen onderling worden verbonden door een vierdraads srr interface met behulp van de SNIC. Het is echter tot nu toe niet mogelijk geweest het Srr interface te gebruiken voor een verbinding tussen de Mitel kaarten door het telkens weer optredend synchronisatieverlies [8]. Door dit synchronisatieverlies gaat telkens weer data verloren en loopt het communicatieprotocol vast.

Volgens 1.R.H. Claessens [10] zouden de data-recovery procedures, die het juiste protocolverloop zouden verzekeren, nog niet zijn germplementeerd, maar bij nader onderzoek bleek dit niet juist te zijn. De timers die voor deze procedures noodzakelijk zijn, waren in de software uitgeschakeld, een standaard instelling van de protocol monitor. Dit werd gedaan om de protocol monitor de tijd te geven de berichten, frames en andere statusberichten op het beeld weer te geven zonder dat het protocol in de time-out procedures terecht zou komen waarbij een bericht opnieuw verzonden zou moeten worden omdat dit niet op tijd werd bevestigd. We kunnen dus weI gebruik maken van de error- correctie procedures maar we moeten dan weI de protocol monitor geheel uitschakelen.

Dit is alleen een oplossing als vaststaat dat er geen fouten meer in de protocollen voorkomen.

De protocollen zijn dus eerst geiinplementeerd en getest door gebruik te maken van het V-interface waar vrijwel nooit een fout optreedt. Hierna is met behulp de veranderde low- level driver (van DNIC naar SNIC aansluiting) en de uitgeschakelde monitor nogmaals geprobeerd een telefoonverbinding te maken, wat uiteindelijk ook lukte. Het duurde echter vele minuten voordat de protocollen waren afgewerkt. Omdat we toch graag willen weten hoe het protocol zich gedraagt, moeten we de timers beter kunnen controleren met de protocol monitor. De inhoud van de huidige timers kunnen weI in stapjes worden verlaagt, de zogenaamde 'Stepped Timers'. Ditwi!zeggen dat bij iedere dispatcher cyclus de inhoud van de timers met een verlaagd worden. De timers zijn dus athankelijk van de snelheid waarmee de verschillende subroutines van de protocollen worden doorlopen en daarvoor is geen vaste tijdsspanne aan te geven.

In de volgende paragrafen behandelen we de veranderingen aan de timers, de low-level drivers en de telefoonverbinding over de SNIC.

Bij het testen van de telefoonverbinding tussen de MITEL kaart en het ISDN terminal

(34)

board kwam later naar voren dat het D-Phone IC een interne fout bevatte. Het maakte gebruik van een gemverteerde Jl-Iaw codec die dus niet voldeed aan de CCITT aanbevelingen. Verder bleek nog dat ook het SNIC niet in orde was. Beide IC's moesten vervangen worden. De problemen met o.a. de synchronisatie op het S/f-interface en enkele verschillen, die tijdens de ontwikkeling van de software waren gevonden, met de aanwezige datasheets werden door deze vervanging opgelost. Ret is dan echter niet meer mogelijk een telefoonverbinding te leggen omdat er maar een IC set beschikbaar was. Zo zijn er twee verschillende codecs bij de MITEL kaarten in gebruik. WeIkan nog een data link verbinding worden gemaakt.

4.1 De protocol timers

Voor de timers van de protocollen bestaan drie mogelijke modes: Enabled, Disabled en Stepped. Met behulp van de Protocol Monitorkaneen van die modes gekozen worden, de gekozen mode geldt voor alle timers. Als de timers worden 'enabled' zuBen deze door een interruptroutine worden bijgehouden. De timers worden alleen gestopt als de protocol monitor de dispatcher tegenhoudt. In de 'disabled' mode worden alle timers gestopt en zullen niet meer door de protocollen gebruikt worden. De 'Stepped' mode gaf de mogelijkheid om de inhoud van detimers bij iedere dispatcher cyclus met een te verlagen.

Deze methode geeft echter geen enkele garantie voor een minimale tijdsspanne omdat de timers afhankelijk zijn van de snelheid waannee de verschillende subroutines van de protocollen worden doorlopen.

Door de opzet van de bestaande 'Stepped' mode kon deze mode alleen gebruikt wordenals men van tevoren wist hoeveel cycli nodig waren voor een protocol stap. De timers werden alleen bijgehouden als het 'GO' commando van de protocol monitor werd gebruikt

Door nu de bestaande 'if Flag[Oj

== 's' {..}'

structuren die betrekking hebben op de 'Stepped' timers te verwijderen uit de monitoring dispatcher (DispateherO, MONDISP.C, zie bijlage 4) en de volgende nieuwe structuur vlak voor de dispatchercyclus in te voeren, krijgen we al een meer bruikbare 'Stepped' timer mode:

i/(Flag[Oj=='S') ( timecheck() ;

1* #MR new, delayed-timing *1 1* let time pass in controlled steps *1

(35)

delay(500);

}

1* Allow other XT to print messages *1

De timers worden door deze opzet voor ieder dispatcher cyclus verlaagd zodat de gebruiker / PC aan de andere kant van de verbinding de gelegenheid krijgt, indit geval een veelvoud van 500 milliseconden afhankelijk van het nonnale aantal toegestane tijdstikken van

±

0.06 seconden (DOS-timer), om de messages, frames en andere toestandsgegevens op het beeldscherm weer te geven.

4.2 De low-level drivers

De low-level drivers zijn nodig voor de besturing van de hardware die aanwezig is op de MITEL kaarten. De bestaande software maakt gebruik van de DNIC om met beide B- kanalen en het D-kanaal een verbinding op te zetten. Ret D-kanaal wordt echter nog altijd via de ST-bus doorgezonden naar de interne RDLC-transceiver van de SNIC. Dit heeft tot gevolg dat alle interrupts van de SNIC afkomstig zijn. We hoeven de interrupt-services routines niet aan te passen als we de SNIC als ISDN interface gaan gebruiken, de interrupts blijven hetzelfde. Als we de SNIC willen gebruiken moet de bron van het D- kanaal de S-bus worden en de D-phone, die voor het digitale telefooninterface zorgt, moet worden doorverbonden met de SNIC in plaats van de DNIC B-kanalen. Dit kunnen we doen met een initialisatieroutine.

Er moot weI rekening worden gehouden met het activeren van het Sff-interface voordat data over deze bus kan worden verzonden. Ret V-interface van MITEL is daarintegen altijd actief. Ook het doorlopen van het 'link: activation' protocol wordt in de initialisatieroutine verzorgd.

De oude initialisatieroutine van de DNIC en SNIC bestond uit twee losse gedeelten: de verbinding tussen de DNIC en SNIC voor het D-kanaal werd voor het opstarten van de ISDN software eerst met behulp van het IES-programma van MITEL [19] of door een speciaal geschreven initialisatieprogramma [9] opgezet, daarna volgde in de ISDN software de onderstaande initialisatie voor de SNIC.

De bestaande initialisatie van de SNIC is nu op de volgende manier aangepast waarbij men nog weI vooraf met de IES-software de TE of NT mode moet selecteren (toogevoegde of

(36)

veranderde programmastructuren zijn vet gedrukt):

voidfar inithardw(void) (

disable();

vectset();

#ifDNIC

outportb(OxbOO,Ox04);

#elijSNIC

outportb(OxbOO,OxOl);

#endij

unmask_OF();

rd_ireg();

enable_intO;

#ifDNIC

outportb(Oxb02,Ox40);

#elijSNIC

1* Program hardware *1

1* Set interrupt vectors *1

1* Program SNIC to generate IRQ signal *1 1* use IRQINDA pin as IRQ.

Note that selection with B2 ofMaster Control Register is as follows:

B2

=

0 selects NDAfunction B2 = I selects IRQfunction.

(MITEL Databook p4-67has been proven wrong on this, with the use ofa logic analyzer) *1

1* #MR new*1

1* use IRQ/NDA pin as IRQ.

#MR comment, New chipset!!!!!!, so IRQ on =0*/

1* Clear HDLC Interrupt Status register *1 1* enable SNIC chip interrupts *1

1* direction ofD-channel port *1 1* #LOcomment# disable transmitter,

enable receiver, no address recognition, transmit to ST-bus, receive from ST-bus, interframe-time-fill=ones

and no HDLC-loopback *1

(37)

outportb(Oxb02, 0x58);

#endif

resetRFIFO();

resetTFIFO();

#ijSNIC

outportb(Oxb08, 0x42);

outportb(Oxb08,Ox01);

/* #MR new, D-channel on S-bus port*/

/* #MR new, setup S-bus */

/* deactivate S-bus and clear diagn. reg.

TE/NT-mode*/

/* , set multiframe seq. NT-mode */

winsel(2); /*Print message on screen */

/* 'S-bus still active... '*/

/*and waitfor deactivation */

/*or key to escape*/

clrscr();cprintj(" S-bus still active, waiting for INFO O. "); clreol();

while «!kbhit()) &&«inportb(Oxb09)&Ox80)==Ox80));

while (kbhit()) getch();

gotoxy(l,1); /*S-bus deactivated*/

/*Activated bus by pressing a key*/

/*or waitforactivation signal (INFO)*/

cprintf(" Press any key to activate S-bus or waitfor INFO-signals. ");

clreol();

while «(!kbhit()) &&«inportb(Oxb09)&Ox80)!=OXSO));

while (kbhitO) getch();

/*S-bus is synchronizing*/

/* wait for Activation State*/

gotoxy(l,1); cprintf(" Synchronizing! ...or any key to tenninate. "); clreol();

outportb(Oxb08,Ox02); /*DeactivationRequest

=

0 */

outportb(Oxb08, OxS2); /*ActivationRequest

=

1 */

while «!kbhit()) &&«inportb(Oxb09) & Ox60)!= Ox60));

while (kbhitO) getch();

#endif /*S-bus activated!!*/

enable();

}

(38)

Door het gebruik van de zogenaamde compiler-directives '#if <constant>', '#elif

<constant>'en 'Dendi! kunnen we tijdens het compileren van het programma het SNIC of DNIC interface kiezen en hoeven er geen twee los van elkaar staande versies van de ISDN software te worden gemaakt. De instellingen die voor het juiste resultaat zorgen, staan in bijlage 3.

We zien dat in de bovenstaande routine eerst de S-bus interrupts worden geselecteerd.

Vervolgens wordt de HDLC-protocoller geInstrueerd het D-kanaal van de S-bus te gebruiken in plaats van de ST-bus, door het SNIC Master Control Register te programmeren.

Bij de implementatie van het 'Link activation' protocol maken we eerst de S-bus inactief.

We wachten vervolgens tot alle andere terminal(s) de bus hebben vrij gegeven door in het SNIC NTffE mode register de bits ISO en IS 1 te bekijken.

Zodra de bus gedeactiveerd is, kunnen we door het indrukken van een toets de bus weer activeren of wachten op INFO berichten van een andere tenninal. De S-bus is pas bruikbaar als de frames van de S-bus zijn gesynchroniseerd (NTffE mode register, Sync/BA bit). Pas na de synchronisatie kan de ISDN software verder gaan.

De low-level driver van de D-Phone die zorgt voor het leggen van de juiste verbinding op de MITEL kaart, kunnen we snel aanpassen door het toepassen van de volgende data- structuur :

struct mitel {int stream,channel;}

#ifDNIC

1* DNICchannel and stream parameters*1

dnic_d = {7,D}, dnic_c = {7,l}, dnic_bl = {7,2},dnic_b2 = {7,3},

#eli/SNIC

/*#MR new, SNIC channel and stream parameters*/

snic_d

=

{6,O}, snic_c

=

{6,1}, snic_bl

=

{6,2}, snic_b2

=

{6,3},

#endif

/*DPHONEchannel and stream parameters */

dp_c = {7,5},dp_bl = {7,6}, dp_b2 = {7,7}, dp_b3 = {7,B};

Verder moeten een aantal aanroepen van subroutines worden veranderd die gebruik maken van deze data-structuren. Deze bevinden zichinL4_PHONE.C:

(39)

#ifDNIC

make B connection(dp bx, dnic bx);- - - -

#eli/SNIC

make_B_connection(dp_bx, snic_bx);

#endif en

#ifDNIC

make_B_disconnection(dp_bx, dnic_bx);

#eli/SNIC

make_B_disconnection(dp_bx, dnic_bx);

#endif

waarbij ..bx

=

bi, b2

4.3 Een telefoonverbinding via de SNIC

Als alle bovenstaande veranderingen zijn aangebracht kunnen we een telefoonverbinding leggen tussen beide MITEL kaarten met behulp van Call Control en het Resource Management die zich op laag 4 bevinden.

Het opzetten en verbreken van een circuit-geschakelde verbindig of 'call' verloopt via een aantal toestanden, de 'call states', waarvan een compleet overzicht in de volgende subparagraaf voIgt. Deze lijst is in tweeen verdeeld omdat de gebruikers- en de netwerkzijde niet dezelfde toestanden gebruiken [2].

4.3.1 De laag 3 call states

De gebruikerszijde van het User-Network interface heeft de volgende call states:

• Null state(VO) :Geen calls aanwezig.

• Call Initiated (VI) : een uitgaande call bevindt zich in deze toestand als de gebruiker het netwerk vraagt een call te realiseren.

• Overlap sending(V2) :een uitgaande call bevindt zich in deze toestand als de

Referenties

GERELATEERDE DOCUMENTEN

De gebruikersmarkt mag dan wel de meeste invloed uitoefenen op de vraag naar kantoren en daarmee de aantrekkelijkheid van kantoorlocaties, dit betekent niet dat de kijk van

Ook misschien minder voor de hand liggende zaken als telefonie gaan meer en meer naar de cloud.. Wie ‘in de cloud werkt’, neemt afscheid van een paar

De intenties van de studenten en hun gedrag in de les zoals voorgaand beschreven, lijken samen te hangen met het wel of niet zichtbaar zijn van de kenmerken van een

bug van uitvoer op ROUTER1 wanneer Serial0 omlaag gaat en ISDN opgepakt wordt bug van uitvoer op ROUTER1 wanneer Serial0 weer terug is en ISDN de oproep laat vallen

De volgende handleiding kan worden gebruikt om lokaal belangrijke certificaten op Cisco IP- telefoons te installeren.  Deze stap is alleen nodig als de verificatie met behulp van de

N.B.: Raadpleeg het Opdrachtplanningsgereedschap (alleen geregistreerde klanten) voor meer informatie over de opdrachten die in dit document worden gegeven.

Met VoIP telefonie kunt u een onbeperkt aantal telefoongesprekken ontvangen, maar zelf kunt u natuurlijk maar één telefoon gesprek aannemen en afhandelen?. Het is daarom handig

kan het niet anders, waarom wordt er voor een traditionele moskee gekozen terwijl de locatie zich bevindt in een westerse, niet islamitische omgeving, wat is de achterliggende