VHDL och laborationer i digitalteknik

Save this PDF as:
 WORD  PNG  TXT  JPG

Storlek: px
Starta visningen från sidan:

Download "VHDL och laborationer i digitalteknik"

Transkript

1 V:1.1 VHDL och laborationer i digitalteknik Vid laborationskursen i digitalteknik används VHDL till alla laborationerna utom den första. VHDL är ett stort språk och enbart en liten del av språket behövs för att gör laborationerna. Det mesta av teorin för VHDL-delen finns beskrivet i laboration 2 och 4. I den här presentationen finns ytterligare några råd och en mycket kortfattad introduktion till VHDL. VHDL (VHSIC Hardware Description Language) VHSIC (Very High SpeedIntegrated circuit) Verilog är ett liknande språk VHDL är en IEEE-standard som revideras med jämna mellanrum VHDL87, VHDL93, VHDL2001,.. V:1.2 VHDL är ett simulatorspråk som beskriver digitala modeller. Modellerna kan kompileras och studeras med olika typer av simulatorer. VHDL innehåller ingen standard för att beskriva hårdvara. VHDL är en händelsestyrd simulator där varje händelse är knuten till tid. För att köa upp samtidiga händelser används deltafördröjningar. Deltafördröjningarna bestämmer i vilken ordning samtidiga händelser skall utföras men de motsvarar ingen verklig tid. VHDL och liknade språk används numera nästan alltid vid konstruktion av digital logik. Vid konstruktion av hårdvara med VHDL kan enbart en delmängd av VHDL användas och det finns bestämda regler för hur vissa konstruktioner skall beskrivas. Att översätta VHDL till hårdvara kallas syntes.

2 Källkod för ett VHDL-program, exempel: library IEEE; use IEEE.STD_LOGIC_1164.ALL; entity ex1 is port (signal a,b,c :in std_logic; signal u: out std_logic ); end ex1; architecture rtl of ex1 is signal u_b: std_logic; u <= u_b or c; u_b <= a and b; end rtl; V:1.3 Källkoden består av 3 delar: Specifikation av vilka bibliotek och packages som används. entity med deklaration av in- och utgångar. architecture som beskriver beteendet V:1.4 library IEEE; use IEEE.STD_LOGIC_1164.ALL; use IEEE.STD_LOGIC_ARITH.ALL; use IEEE.STD_LOGIC_UNSIGNED.ALL; Alla VHDLprogram vid laborationerna måste innehålla Biblioteket IEEE Package IEEE.STD_LOGIC_1164.ALL Övriga package kan tillkomma vid behov, se exemplet ovan Kommentarer inleds med -- VHDL skiljer inte mellan stora och små bokstäver (Undantag Z )

3 V:1.5 entity ex1 is port (a,b,c :in std_logic; u: out std_logic ); end ex1; Under entity deklareras vilka externa anslutningar som modellen skall ha. Objekten a, b, c och u är av klassen signal, datatypen std_logic, mode in respektive out. Under laborationskursen kommer ofta datatypen std_logic_vector att användas. För övrigt får inga andra modes, klasser eller datatyper användas. OBS utsignaler kan enbart tilldelas värde (u i detta fall) insignaler kan enbart läsas (a, b och c) Att skriva en entity är alltid mycket enkelt. Enbart in- och utsignaler skall deklareras. V:1.6 architecture rtl of ex1 is signal u_b: std_logic; u <= u_b or c; u_b <= a and b; end rtl; Under architecture definieras konstruktionens beteende. Innan första kan ytterligare deklarationer göras. I detta fall deklareras en intern signal u_b. Den interna signalen kan både läsas och skrivas och den är praktisk som en dummy signal i många fall. Mellan architecturens -end finns de exekverbara satserna. I exemplet används de logiska operatorerna or och and.

4 V:1.7 Parallell (Concurrent) VHDL I det föregånde exemplet exekveras raderna i architecturen exakt samtidigt. Det spelar ingen roll i vilken ordning de står och antalet rader är obegränsat. Exemplet nedan visar att ordningen mellan satserna saknar betydelse, tiden delta är noll. u <= u_b or c; u_b <= a and b; u_b <= a and b; u <= u_b or c; Antag att a ändras vid t = 10 ns u_b ändras vid t = 10 ns +1 delta u ändras vid t = 10 ns+2 delta Antag att a ändras vid t = 10 ns u_b ändras vid t = 10 ns +1 delta u ändras vid t = 10 ns+2 delta Alla exekverbara satser utförs exakt samtidigt i parallell VHDL V:1.8 Instruktioner som kan användas i parallell VHDL: OBS bit-värdet anges med 1 eller 0

5 V:1.9 Instruktioner som kan användas i parallell VHDL,forts: OBS vektorvärdet anges med 00,. Aritmetiska operationer: OBS de aritmetiska operationerna finns definierade i ett antal packages, t.ex: IEEE.STD_LOGIC_UNSIGNED.ALL; V:1.10 Vektorer i VHDL: signal s: std_logic_vector(5 downto 0); signal a,b: std_logic vector(2 downto 0); a<= 00 &b(2); s <=a&b; -- (obs: s har 6 element, a,b har 3 element) end; &-tecknet innebär sammanslagning (concatenering) av två vektorer

6 V:1.11 Sekvensiell VHDL Med sekvensiell VHDL menas att instruktionerna utförs i sekvens precis som vid vanlig programmering. I laborationskursen används sekvensiell VHDLenbart i processer. En process kan vara i väntande (wait) eller i aktivt (executing) tillstånd. Om processen är väntande så måste ett startvillkor uppfyllas för att processen skall starta. Processen exekverar då tills nästa waitvillkor påträffas. En process är ett parallellt kommando som tar 1 delta att utföra. Signaler tilldelas värden inne i processen men värdet uppdateras när processen lämna sitt aktivt tillstånd. Signalerna erhåller värden (uppdateras) när processen avslutas. Sekvensiell och Parallell VHDL V:1.12

7 V:1.13 Att använda processer i VHDL är mycket vanligt och det förenklar beskrivningarna i hög grad. Det är mycket viktigt är att få en känsla för hur processerna fungerar och man brukar skilja mellan kombinatoriska processer och synkrona processer. En process består av: process(sensitivity_list) process_deklaration.. end process; V:1.14 Kombinatoriska processer I kombinatoriska processer måste alla insignaler till processen finnas med i sensitivity list. Det är inte säkert att det blir fel om någon signal utelämnas men det kan bli skillnader mellan simulering och verklighet. Naturligtvis måste alla utsignaler tilldelas värden annars uppstår minnesfunktioner för de signaler som inte får värden. När man använder if-satser är det lätt att glömma det. Exempel på en kombinatorisk process: process(a,b,c) variable temp: std_logic; temp:=a or b; ut<=temp and not c; end process; Här deklareras en variable. En variable uppdaterar sitt värde omedelbart.

8 V:1.15 Synkrona processer Synkrona processer styrs av flanken på en klocksignal. Sensivity list måste innehålla klocksignalen och andra direktverkande signaler (t.ex. reset). Här är det fel att ta med alla insignaler eftersom då försvinner den synkrona klockningen. Exempel på en synkron process: process (clk,resetn) if resetn = 0 then q<= 0 ; elsif clk event and clk = 1 then q<=d; end if; end process; V:1.16 process (clk,resetn) if resetn = 0 then q<= 0 ; elsif clk event and clk = 1 then q<=d; end if; end process;

9 V:1.17 If statement, syntax V:1.18 Case statement, syntax

10 V:1.19 Exempel med case-satsen V:1.20 Exempel: 4 bitars skiftregister,parallell in, serie ut libraray ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; --..unsigned.all för skiftoperationen sll entity shift_ex is port(clk,resetn,shift_en,load: in std_logic; d_in: in std_logic_vector(3 downto 0); shift_out: std_logic); end;

11 Exempel: 4 bitars skiftregister,parallell in, serie ut, forts V:1.21 architecture rtl of shift_ex is signal shift_reg_b: std_logic_vector(3 downto 0); process(clk,resetn) if resetn= 0 then shift_reg_b<= 0000 ; --(others=> 0 ) elsif clk event and clk= 1 then if load= 1 then shift_reg_b<=d_in; elsif shift_en= 1 then shift_reg_b(3 downto 1)<= shift_reg_b(2 downto 0); shift_reg_b(0)<= 0 ; -- shift_reg_b<=shift_reg_b sll 1; VHDL93 end if; end if; end process; shift_out<=shift_reg_b(3); end; V:1.22 Exempel: 4-bitars räknare med enable och carry out libraray ieee; use ieee.std_logic_1164.all; use ieee.std_logic_unsigned.all; --..unsigned.all för aritmetiska operationen + entity count4 is entity count4 is port(clk,resetn,count_en: in std_logic; sum: out std_logic_vector(3 downto 0); cout: std_logic); end;

12 V:1.23 Exempel: 4-bitars räknare med enable och carry out, forts architecture rtl of count4 is signal count_b: std_logic_vector(3 downto 0); process(clk,resetn) if resetn= 0 then count_b<= 0000 ; --(others=> 0 ) elsif clk event and clk= 1 then if count_en= 1 then count_b<=count_b+1; end if; end if; end process; sum<=count_b cout<= 1 when count_b=15 and count_en= 1 else 0 ; end; V:1.24

Laboration D184. ELEKTRONIK Digitalteknik. Sekvensnät beskrivna med VHDL och realiserade med PLD

Laboration D184. ELEKTRONIK Digitalteknik. Sekvensnät beskrivna med VHDL och realiserade med PLD UMEÅ UNIVERSITET Tillämpad fysik och elektronik Digitalteknik Lars Wållberg/Dan Weinehall/ Håkan Joëlson 2010-05-06 v 1.7 ELEKTRONIK Digitalteknik Laboration D184 Sekvensnät beskrivna med VHDL och realiserade

Läs mer

Introduktion till Xilinx CPLD och ISE WebPack 6.2 Version NV

Introduktion till Xilinx CPLD och ISE WebPack 6.2 Version NV Introduktion till Xilinx CPLD och ISE WebPack 6.2 Version NV Introduktionen beskriver grunderna för att använda programvaran Xilinx ISE WebPack 6.2.03 tillsammans med en CPLD (Complex Programmable Logic

Läs mer

FÖRELÄSNING 8 INTRODUKTION TILL DESIGN AV DIGITALA ELEKTRONIKSYSTEM

FÖRELÄSNING 8 INTRODUKTION TILL DESIGN AV DIGITALA ELEKTRONIKSYSTEM FÖRELÄSNING 8 INTRODUKTION TILL DESIGN AV DIGITALA ELEKTRONIKSYSTEM Innehåll Designflöde Översikt av integrerade kretsar Motivation Hardware Description Language CAD-verktyg 1 DESIGNFLÖDE FÖR DIGITALA

Läs mer

Digitala elektroniksystem

Digitala elektroniksystem Digitala elektroniksystem Professor Per Larsson-Edefors perla@chalmers.se Digital- och datorteknik, 081126, Per Larsson-Edefors Sida 1 Konstruktionsalternativ Kretskort med diskreta standardkomponenter

Läs mer

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare

IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare IE1205 Digital Design: F8: Minneselement: Latchar och Vippor. Räknare Sekvensiella System a(t) f(a(t)) Ett sekvensiellt system har ett inbyggt minne - utsignalen beror därför BÅDE av insignalens NUVARANDE

Läs mer

Lösningförslag till Exempel på tentamensfrågor Digitalteknik I.

Lösningförslag till Exempel på tentamensfrågor Digitalteknik I. Lösningförslag till Exempel på tentamensfrågor Digitalteknik I.. Uttryckt i decimal form: A=28+32+8 + 2 =70 B=59 C=7 A+B+C=246 2. Jag låter A' betyda "icke A" A'B'C'D'+ABC'D'+A'BCD'+AB'CD'=D'(A'(B'C'+BC)+A(BC'+B'C))=

Läs mer

Tenta i Digitalteknik

Tenta i Digitalteknik Tenta i Digitalteknik Kurskod D0011E Tentamensdatum 2010-08-27 Skrivtid 9.00-14.00 Maximalt resultat 50 poäng Godkänt resultat 25 poäng inkl bonus Jourhavande lärare Per Lindgren Tel 070 376 8150 Tillåtna

Läs mer

Lösningsföslag till Exempel på tentamensuppgifter i Digitalteknik I

Lösningsföslag till Exempel på tentamensuppgifter i Digitalteknik I Lösningsföslag till Exempel på tentamensuppgifter i Digitalteknik I Flervalsfrågor. A 2. C 3. B 4. D 5. A 6. B 7. C 8. D 9. C 0. B. B 2. C 3. A 4. C 5. A Problemuppgifter. Uttryckt i decimal form: A=28+32+8

Läs mer

Tenta i Digitalteknik

Tenta i Digitalteknik Tenta i Digitalteknik Kurskod D0011E Tentamensdatum 2010-06-01 Skrivtid 9.00-14.00 (5 timmar) Maximalt resultat 50 poäng Godkänt resultat 25 poäng inkl bonus Jourhavande lärare Per Lindgren Tel 070 376

Läs mer

IE1204/IE1205 Digital Design

IE1204/IE1205 Digital Design TENTAMEN IE1204/IE1205 Digital Design 2012-12-13, 09.00-13.00 Inga hjälpmedel är tillåtna! Hjälpmedel Tentamen består av tre delar med sammanlagd tolv uppgifter, och totalt 30 poäng. Del A1 (Analys) innehåller

Läs mer

F5 Introduktion till digitalteknik

F5 Introduktion till digitalteknik George Boole och paraplyet F5 Introduktion till digitalteknik EDAA05 Roger Henriksson Jonas Wisbrant p = b! (s " r) George Boole (1815-1864) Professor i Matematik, Queens College, Cork, Irland 2 Exklusiv

Läs mer

Styrteknik: MELSEC FX och numeriska värden

Styrteknik: MELSEC FX och numeriska värden PLC2C:1 MELSEC FX I kursen styrteknik används styrsystemet FX1S som är ett litet system i MELSEC FX-serien. Vår version av FX1S har endast digitala in- och utgångar men oftast finns det både digitala och

Läs mer

LABORATIONSINSTRUKTION

LABORATIONSINSTRUKTION Högskolan Dalarna Institutionen för Elektroteknik LABORATION LABORATIONSINSTRUKTION LOG/iC, PLD, kombinatorik, sekvensnät KURS Digitalteknik LAB NR 6 INNEHÅLL. Inledning 2. Prioritetskodare 3. Elektronisk

Läs mer

Försättsblad till skriftlig tentamen vid Linköpings Universitet

Försättsblad till skriftlig tentamen vid Linköpings Universitet Försättsblad till skriftlig tentamen vid Linköpings Universitet Datum för tentamen 03-05-3 Salar U, KÅRA, U3 Tid -8 Kurskod TSEA Provkod TEN Kursnamn Digitalteknik Institution ISY Antal uppgifter som ingår

Läs mer

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik

Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 Mikrodatorteknik Elektroteknik MF1016 föreläsning 9 MF1017 föreläsning 7 - Inbyggda system - Analog till digital signal - Utvecklingssystem, målsystem - Labutrustningen - Uppbyggnad av mikrokontroller - Masinkod, assemblerkod

Läs mer

Sensorsystem till hinderhanterande robot

Sensorsystem till hinderhanterande robot Institutionen för informationsteknologi Sensorsystem till hinderhanterande robot Sensor System for Obstacle Handling Robot Examensarbete vid Elektro- och datoringenjörsprogrammet ht 2005 Sensorsystem till

Läs mer

Grundläggande digitalteknik

Grundläggande digitalteknik Grundläggande digitalteknik Jan Carlsson Inledning I den verkliga världen vet vi att vi kan få vilka värden som helst när vi mäter på något. En varm sommardag visar termometern kanske 6, 7 C. Men när det

Läs mer

Föreläsning 6: Introduktion av listor

Föreläsning 6: Introduktion av listor Föreläsning 6: Introduktion av listor Med hjälp av pekare kan man bygga upp datastrukturer på olika sätt. Bland annat kan man bygga upp listor bestående av någon typ av data. Begreppet lista bör förklaras.

Läs mer

Föreläsning 1 & 2 INTRODUKTION

Föreläsning 1 & 2 INTRODUKTION Föreläsning 1 & 2 INTRODUKTION Denna föreläsning Vad händer under kursen? praktisk information Kursens mål vad är programmering? Skriva små program i programspråket Java Skriva program som använder färdiga

Läs mer

Laboration VHDL introduktion

Laboration VHDL introduktion Laboration VHDL introduktion Digital Design IE1204 (Observera! Ingår inte för IE1205) Observera! För att få laborera måste Du ha: bokat en laborationstid i bokningssystemet (Daisy). löst ditt personliga

Läs mer

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik VT05 2 Repetition Repetition - Programmering i

Läs mer

DIGITALTEKNIK. Laboration D173. Grundläggande digital logik

DIGITALTEKNIK. Laboration D173. Grundläggande digital logik UMEÅ UNIVERSITET Tillämpad fysik och elektronik Digitalteknik Håkan Joëlson 2007-11-19 v 1.1 DIGITALTEKNIK Laboration D173 Grundläggande digital logik Innehåll Mål. Material.... Uppgift 1...Sanningstabell

Läs mer

Tentamen SSY 065, lördag 14/4, 08:30-12:30, M. Examinator: Martin Fabian, (772) 3716 Tider för lärarens närvaro: 09:30, 11:30

Tentamen SSY 065, lördag 14/4, 08:30-12:30, M. Examinator: Martin Fabian, (772) 3716 Tider för lärarens närvaro: 09:30, 11:30 Industriautomation Tentamen SSY 065, lördag 14/4, 08:30-12:30, M Examinator: Martin Fabian, (772) 3716 Tider för lärarens närvaro: 09:30, 11:30 Fullständig lösning ska lämnas på samtliga uppgifter. I förekommande

Läs mer

Digital Design IE1204

Digital Design IE1204 Digital Design IE1204 Kursomgång för IT, (ME), och IT-Kandidat, Kista. F11 Programmerbar logik VHDL för sekvensnät william@kth.se IE1204 Digital Design F1 F3 F2 F4 Ö1 Booles algebra, Grindar MOS-teknologi,

Läs mer

Programmeringsteknik med C och Matlab

Programmeringsteknik med C och Matlab Programmeringsteknik med C och Matlab Kapitel 2: C-programmeringens grunder Henrik Björklund Umeå universitet Björklund (UmU) Programmeringsteknik 1 / 32 Mer organisatoriskt Imorgon: Datorintro i lab Logga

Läs mer

Programable Logic Devices

Programable Logic Devices Programable Logic Devices Under 1970-talet introducerades programmerbara logiska kretsar som betecknas programmable logic device (PLD) De bygger på en struktur med en AND-ORmatris som gör det enkelt att

Läs mer

Grunderna i stegkodsprogrammering

Grunderna i stegkodsprogrammering Kapitel 1 Grunderna i stegkodsprogrammering Följande bilaga innehåller grunderna i stegkodsprogrammering i den form som används under kursen. Vi kommer att kort diskutera olika datatyper, villkor, operationer

Läs mer

Programmering A. Johan Eliasson johane@cs.umu.se

Programmering A. Johan Eliasson johane@cs.umu.se Programmering A Johan Eliasson johane@cs.umu.se 1 Jag Undervisar mest grundläggande programmering på Institutionen för datavetensakap Applikationsutveckling för iphone Applikationsutveckling i Java Datastrukturer

Läs mer

Exempeluppgift i Logikstyrning. 1 Inledning. 2 Insignaler och utsignaler

Exempeluppgift i Logikstyrning. 1 Inledning. 2 Insignaler och utsignaler Exempeluppgift i Logikstyrning Inledning Idén med detta papper är att ge en allmän beskrivning av labbutrustningen och tips för hur man kan lösa olika praktiska problem i samband med laborationen. Läs

Läs mer

(2B1560, 6B2911) HT08

(2B1560, 6B2911) HT08 Royal Institute of Technology, KTH, Kista School of Information and Communication Technology, ICT Department of Electronics, Computer and Software, ECS Digital Design, IE1204 (2B1560, 6B2911) HT08 OBS!

Läs mer

Laboration D181. ELEKTRONIK Digitalteknik. Kombinatoriska kretsar, HCMOS. 2008-01-24 v 2.1

Laboration D181. ELEKTRONIK Digitalteknik. Kombinatoriska kretsar, HCMOS. 2008-01-24 v 2.1 UMEÅ UNIVERSITET Tillämpad fysik och elektronik Digitalteknik Christer Ardlin/Lars Wållberg/ Dan Weinehall/Håkan Joëlson 2008-01-24 v 2.1 ELEKTRONIK Digitalteknik Laboration D181 Kombinatoriska kretsar,

Läs mer

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program

Dagens föreläsning. Repetition. Repetition - Programmering i C. Repetition - Vad C består av. Repetition Ett första C-program Dagens föreläsning Programmeringsteknik för Ingenjörer VT05 Föreläsning 3-4 Repetition Datatyper Uttryck Operatorer Satser Algoritmer Programmeringsteknik för ingenjörer, VT06 2 Repetition Repetition -

Läs mer

T1-modulen Lektionerna 10-12. Radioamatörkurs OH6AG - 2011 OH6AG. Bearbetning och översättning: Thomas Anderssén, OH6NT Heikki Lahtivirta, OH2LH

T1-modulen Lektionerna 10-12. Radioamatörkurs OH6AG - 2011 OH6AG. Bearbetning och översättning: Thomas Anderssén, OH6NT Heikki Lahtivirta, OH2LH T1-modulen Lektionerna 10-12 Radioamatörkurs OH6AG - 2011 Bearbetning och översättning: Thomas Anderssén, OH6NT Original: Heikki Lahtivirta, OH2LH 1 Logikkretsar Logikkretsarna är digitala mikrokretsar.

Läs mer

2.4. Teckensträngar och logiska uttryck

2.4. Teckensträngar och logiska uttryck 2.4. Teckensträngar och logiska uttryck I Fortran sparar man text i variabler av typen CHARACTER. För varje tecken reserveras normalt 1 byte i minnet. För att deklarera en teckenvariabel TEXT och samtidigt

Läs mer

SMD 134 Objektorienterad programmering

SMD 134 Objektorienterad programmering SMD 134 Objektorienterad programmering Dagens agenda: Typer i Java: primitiva datatyperna, referenstyper Variabler och variabeltilldelningar med primitiva typer Konstanter av de olika typerna. Heltalsräkning

Läs mer

Grunderna i SQL del 1

Grunderna i SQL del 1 Grunderna i SQL del 1 1. SELECT-frågor 2. SELECT 3. WHERE 4. ORDER BY 5. Inre join 6. Yttre join 7. Andra typer av join 8. Union 9. Aggregatfunktioner 10. Gruppera och summera Kap. 3 Kap. 4 Kap. 5 utom

Läs mer

Låskretsar och Vippor

Låskretsar och Vippor Låskretsar och Vippor Låskretsar (latch) och vippor (flip-flop) är kretsar med minnesfunktion. De ingår i datorns minnen och i processorns register. SR-låskretsen är i princip datorns minnescell Q=1 Q=0

Läs mer

LABORATIONSINSTRUKTION

LABORATIONSINSTRUKTION Högskolan Dalarna Elektroteknik LABORATION LABORATIONSINSTRUKTION Trafikljus med SFC-programmering KURS El- och styrteknik för tekniker ET1015 INNEHÅLL LAB NR PLC 5 Ver 1.0 1. Inledning 2. Laborationskortet

Läs mer

Digital Design IE1204

Digital Design IE1204 Digital Design IE204 F Introduktion till Digitaltekniken william@kth.se IE204 Digital Design F F3 F2 F4 Ö Booles algebra, Grindar MOS-teknologi, minimering F5 F6 Ö2 Aritmetik Ö3 F7 F8 Ö4 F9 Ö5 KK LAB Multiplexor

Läs mer

Videokort för VME-bussen

Videokort för VME-bussen Examensarbete Videokort för VME-bussen Andreas Kingbäck 2003-06-02 Department of Science and Technology Linköpings Universitet SE-601 74 Norrköping, Sweden Institutionen för teknik och naturvetenskap Linköpings

Läs mer

Matematisk Modellering

Matematisk Modellering Matematisk Modellering Föreläsning 1 Anders Heyden Matematikcentrum Lunds Universitet Matematisk Modellering p.1/37 Denna föreläsning (läsvecka 1) Vad handlar kursen om, mål, kurskrav, ide. Matematisk

Läs mer

Tentamen i Digitalteknik, EIT020

Tentamen i Digitalteknik, EIT020 Elektro- och informationsteknik Tentamen i Digitalteknik, EIT020 4 april 2013, kl 14-19 Skriv namn och årskurs på alla papper. Börja en ny lösning på ett nytt papper. Använd bara en sida av pappret. Lösningarna

Läs mer

Twincat: PLC Control

Twincat: PLC Control Dokument Förklaring Dat. Revision KI-221-003-003 Kom igång med trukturerad Text 080402 1.0 Twincat: PLC Control Kom igång med Strukturerad Text (ST) programmering 1. Kod exempel. a. Exemplen som demonstreras

Läs mer

Objektorienterad programmering i Java

Objektorienterad programmering i Java Objektorienterad programmering i Java Föreläsning 4 Täcker i stort sett kapitel 6 i kursboken Java Software Solutions 1 Läsanvisningar Den här föreläsningen är uppbyggd som en fortsättning av exemplet

Läs mer

TAIU07 Matematiska beräkningar med Matlab

TAIU07 Matematiska beräkningar med Matlab TAIU07 Matematiska beräkningar med Matlab Datorlektion 2. Villkor och Repetition 1 Logiska uttryck Uppgift 1.1 Låt a=3 och b=6 Vad blir resultatet av testerna ab? Uppgift 1.2 Låt a, b,

Läs mer

Programmerbar logik. Kapitel 4

Programmerbar logik. Kapitel 4 Kapitel 4 Programmerbar logik Programmerbar logik (PLC: Programmable Logic Controller; fi. ohjelmoitava logiikka) är en sorts mikrodatorliknande instrument som är speciellt avsedda för logik- och sekvensstyrningsproblem.

Läs mer

Laboration Kombinatoriska kretsar

Laboration Kombinatoriska kretsar Laboration Kombinatoriska kretsar Digital Design IE1204/5 Observera! För att få laborera måste Du ha: bokat en laborationstid i bokningssystemet (Daisy). löst ditt personliga web-häfte med förkunskapsuppgifter

Läs mer

%HQJW0DJQKDJHQ,QJHQM UVK JVNRODQL- QN SLQJ &RS\ULJKW%HQJW0DJQKDJHQ/L7+

%HQJW0DJQKDJHQ,QJHQM UVK JVNRODQL- QN SLQJ &RS\ULJKW%HQJW0DJQKDJHQ/L7+ %HQJW0DJQKDJHQ,QJHQM UVK JVNRODQL- QN SLQJ TEST! Vad är testets mål? Vad är testets problem? Vad är testbar elektronik? Vad är design för testbarhet? Scan och Boundary Scan teknik Volt Specifikt mätvärde

Läs mer

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och...

MATLAB. Python. Det finns flera andra program som liknar MATLAB. Sage, Octave, Maple och... Allt du behöver veta om MATLAB: Industristandard för numeriska beräkningar och simulationer. Används som ett steg i utvecklingen (rapid prototyping) Har ett syntax Ett teleskopord för «matrix laboratory»

Läs mer

Tentamen i Robotteknik MPR160, 16 december 2000

Tentamen i Robotteknik MPR160, 16 december 2000 Tenta i Robotteknik Z3 2000-12-16 1/6 Tentamen i Robotteknik MPR160, 16 december 2000 Lärare: Rolf Berlin ank 1286; 0707-99 24 89 Anders Boström ank 1526 Tillåtna hjälpmedel: Typgodkända kalkylatorer och

Läs mer

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010

Programmering, grundkurs, 8.0 hp, Elektro, KTH, hösten 2010 Föreläsning 6 Kapitel 5 5.1 switch-satsen Vi ser på ett par exempel ur boken: int a; srand(time(0)); a=rand()%6+1; if(a==1) printf("hej Du glade\n"); else if(a==2) printf("god dag\n"); else if(a==3) printf("är

Läs mer

Tentamen i TTIT07 Diskreta Strukturer

Tentamen i TTIT07 Diskreta Strukturer Tentamen i TTIT07 Diskreta Strukturer 2004-10-28, kl 8 13, TER1 och TERC Inga hjälpmedel är tillåtna Kom ihåg att svaren på samtliga uppgifter måste MOTIVERAS, och att motiveringarna skall vara uppställda

Läs mer

Beskrivning av porthantering i mikroprocessorn SAM3U som används på vårt labkort SAM3U- EK.

Beskrivning av porthantering i mikroprocessorn SAM3U som används på vårt labkort SAM3U- EK. Tomas Nordström Högskolan i Halmstad Dokumentversion 0.1, 2012-04- 01 Beskrivning av porthantering i mikroprocessorn SAM3U som används på vårt labkort SAM3U- EK. Informationen till detta kompendium är

Läs mer

LABORATION DATORKONSTRUKTION TSEA83 UART. Namn och personnummer. Version: 1.0 2013 (OS)

LABORATION DATORKONSTRUKTION TSEA83 UART. Namn och personnummer. Version: 1.0 2013 (OS) LABORATION DATORKONSTRUKTION TSEA83 UART Version: 1.0 2013 (OS) Namn och personnummer Godkänd 1 blank sida 2 Innehåll 1 Inledning 5 1.1 Syfte................................. 5 1.2 Förberedelser............................

Läs mer

Editering, Kompilering och Exekvering av Javaprogram

Editering, Kompilering och Exekvering av Javaprogram UMEÅ UNIVERSITET Institutionen för informatik B.1, Programmeringens grunder, 5 poäng Editering, Kompilering och Exekvering av Javaprogram Introduktion Syftet med kursmomentet Programmeringens grunder (B.1)

Läs mer

Processidentifiering och Polplacerad Reglering

Processidentifiering och Polplacerad Reglering UmU/TFE Laboration Processidentifiering och Polplacerad Reglering Introduktion Referenser till teoriavsnitt följer här. Processidentifiering: Kursbok kap 17.3-17.4. Jämför med det sista exemplet i kap

Läs mer

OOP Objekt-orienterad programmering

OOP Objekt-orienterad programmering OOP F2:1 OOP Objekt-orienterad programmering Föreläsning 2 Deklaration och tilldelning Programsatser Tilldelning Input/Output Selektion Deklaration och tilldelning OOP F2:2 int x; double d; char ch; boolean

Läs mer

Beräkningsvetenskap föreläsning 2

Beräkningsvetenskap föreläsning 2 Beräkningsvetenskap föreläsning 2 19/01 2010 - Per Wahlund if-satser if x > 0 y = 2 + log(x); else y = -1 If-satsen skall alltid ha ett villkor, samt en då det som skall hända är skrivet. Mellan dessa

Läs mer

Vad är det? Översikt. Innehåll. Vi behöver modeller!!! Kontinuerlig/diskret. Varför modeller??? Exempel. Statiska system

Vad är det? Översikt. Innehåll. Vi behöver modeller!!! Kontinuerlig/diskret. Varför modeller??? Exempel. Statiska system Vad är det? Översikt Discrete structure: A set of discrete elements on which certain operations are defined. Discrete implies non-continuous and therefore discrete sets include finite and countable sets

Läs mer

Styrteknik distans: Minneselement, register, räknare, AD-omv D4:1

Styrteknik distans: Minneselement, register, räknare, AD-omv D4:1 Styrteknik distans: Minneselement, register, räknare, AD-omv D4:1 Digitala kursmoment D1 Binära tal, talsystem och koder D2 Boolesk Algebra D3 Grundläggande logiska grindar D4 Minneselement, register,

Läs mer

Digitalteknik: CoolRunner-II CPLD Starter Kit Med kommentarer för kursen ht 2012

Digitalteknik: CoolRunner-II CPLD Starter Kit Med kommentarer för kursen ht 2012 Med kommentarer för kursen ht 2012 2012 CR:1 CoolRunner-II CPLD Starter Kit är ett litet utvecklingssystem för Xilinx-kretsen XC2C256. Utvecklingskortet kommer från företaget Digilent. Vid laborationerna

Läs mer

Provmoment: Ladokkod: Tentamen ges för: Tentamen TE111B El3. Namn: Personnummer: Tentamensdatum: 20120410 Tid: 14:00-18:00.

Provmoment: Ladokkod: Tentamen ges för: Tentamen TE111B El3. Namn: Personnummer: Tentamensdatum: 20120410 Tid: 14:00-18:00. Mikrodatorteknik Provmoment: Ladokkod: Tentamen ges för: Tentamen TE111B El3 7,5 högskolepoäng Namn: Personnummer: Tentamensdatum: 20120410 Tid: 14:00-18:00 Hjälpmedel: Totalt antal poäng på tentamen:

Läs mer

Liten MATLAB introduktion

Liten MATLAB introduktion Liten MATLAB introduktion Denna manual ger en kort sammanfattning av de viktigaste Matlab kommandon som behövs för att definiera överföringsfunktioner, bygga komplexa system och analysera dessa. Det förutsätts

Läs mer

Inledande programmering med C# (1DV402) 27+15=42 1 (22)

Inledande programmering med C# (1DV402) 27+15=42 1 (22) 27+15=42 1 (22) Variabler Upphovsrätt för detta verk Detta verk är framtaget i anslutning till kursen Inledande programmering med C# vid Linnéuniversitetet. Du får använda detta verk så här: Allt innehåll

Läs mer

Signalanalys med snabb Fouriertransform

Signalanalys med snabb Fouriertransform Laboration i Fourieranalys, MVE030 Signalanalys med snabb Fouriertransform Den här laborationen har två syften: dels att visa lite på hur den snabba Fouriertransformen fungerar, och lite om vad man bör

Läs mer

Laboration Kombinatoriska kretsar

Laboration Kombinatoriska kretsar Laboration Kombinatoriska kretsar Digital Design IE1204/5 Observera! För att få laborera måste Du ha: en bokad laborationstid i bokningssystemet (Daisy). löst ditt personliga web-häfte med förkunskapsuppgifter

Läs mer

"Är en"-relation. "Har en"-relation. Arv. Seminarium 2 Relevanta uppgifter. I exemplet Boll från förra föreläsningen gällde

Är en-relation. Har en-relation. Arv. Seminarium 2 Relevanta uppgifter. I exemplet Boll från förra föreläsningen gällde Föreläsning 7 "Har en"-relation Arv "Har en" "Är en" Superklassen Object Överskuggning Fordonsexempel Seminarium 2 Relevanta uppgifter Uppgift 31 I exemplet Boll från förra föreläsningen gällde följande

Läs mer

BICT:01 BICT. sv-se. Användarinstruktion Gäller från BICT 2.24. Utgåva 5. Scania CV AB 2015, Sweden

BICT:01 BICT. sv-se. Användarinstruktion Gäller från BICT 2.24. Utgåva 5. Scania CV AB 2015, Sweden BICT:01 Utgåva 5 sv-se BICT Användarinstruktion Gäller från BICT 2.24 339 837 Scania CV AB 2015, Sweden Introduktion 3 Om BICT 3 Inställningar 4 Översikt 5 Beskrivning av termer 6 Grafiska symboler i programmet

Läs mer

Introduktion C-programmering

Introduktion C-programmering Introduktion C-programmering Viktor Kämpe C Historik Utvecklades först 1969 1973 av Dennis Ritchcie vid AT&T Bell Labs. Högnivå språk med kontakt mot maskinvara. Ett utav de mest använda språken. 2 C Standarder

Läs mer

IT för personligt arbete F6

IT för personligt arbete F6 IT för personligt arbete F6 Datalogi del 2 DSV Peter Mozelius Datarepresentation Det som lagras i en dator representeras i grunden som 1:or och 0:or Dessa binära värden kan sedan tolkas på olika sätt i

Läs mer

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic

Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Labb i Datorsystemteknik och programvaruteknik Programmering av kalkylator i Visual Basic Inledning Starta Microsoft Visual Studio 2005. Välj create Project Välj VB + Vindows Application och välj ett nytt

Läs mer

Introduktion till programmering och Python Grundkurs i programmering med Python

Introduktion till programmering och Python Grundkurs i programmering med Python Introduktion till programmering och Python Hösten 2009 Dagens lektion Vad är programmering? Vad är en dator? Filer Att tala med datorer En första titt på Python 2 Vad är programmering? 3 VAD ÄR PROGRAMMERING?

Läs mer

0.1. INTRODUKTION 1. 2. Instruktionens opcode decodas till en språknivå som är förstålig för ALUn.

0.1. INTRODUKTION 1. 2. Instruktionens opcode decodas till en språknivå som är förstålig för ALUn. 0.1. INTRODUKTION 1 0.1 Introduktion Datorns klockfrekvens mäts i cykler per sekund, eller hertz. En miljon klockcykler är en megahertz, MHz. L1 cache (level 1) är den snabbaste formen av cache och sitter

Läs mer

Funktionens deklaration

Funktionens deklaration Funktioner - 1 Teknik för stora program #include #include......... cout

Läs mer

Enkla datatyper minne

Enkla datatyper minne Enkla datatyper minne 143.56 sant Sonja A falskt 18 1999-10-29 Bertil Gralvik, KTH Ingenjörsskolan 1 Addera två tal Algoritmen Summera tal Mata in två tal Beräkna Skriv ut resultat Mata in tal 1 Mata in

Läs mer

Visual Basic, en snabbgenomgång

Visual Basic, en snabbgenomgång Visual Basic, en snabbgenomgång Variabler och Datatyper En variabel är som en behållare. Olika behållare passar bra till olika saker. I Visual Basic(härefter VB) finns olika typer av behållare för olika

Läs mer

16 Programmering TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5

16 Programmering TI -86 F1 F2 F3 F4 F5 M1 M2 M3 M4 M5 16 Programmering Skriva program till TI-86... 214 Köra program... 221 Arbeta med program... 223 Hämta och köra assemblerprogram... 226 Arbeta med strängar... 227 TI -86 M1 M2 M3 M4 M5 F1 F2 F3 F4 F5 214

Läs mer

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012

Tentamen i. för D1 m fl, även distanskursen. fredag 13 januari 2012 1 of 6 Örebro universitet Akademin för naturvetenskap och teknik Thomas Padron-McCarthy (thomas.padron-mccarthy@oru.se) Tentamen i Programmering grundkurs och Programmering C för D1 m fl, även distanskursen

Läs mer

Att göra spel med Game Maker. Rum. Grundläggande delar. Gamemaker, dagens föreläsning. Programmeringsmodell

Att göra spel med Game Maker. Rum. Grundläggande delar. Gamemaker, dagens föreläsning. Programmeringsmodell Gamemaker, dagens föreläsning Vad innehåller Gamemaker? Rum Objekt Händelser Aktioner Sprites Ljud Variabler och uttryck Live exempel: Början på Pac Man Att göra spel med Game Maker Programmeringsmodell

Läs mer

Digitalt lärande och programmering i klassrummet

Digitalt lärande och programmering i klassrummet Digitalt lärande och programmering i klassrummet Innehåll Programmering Vad är programmering och varför behövs det? Argument för (och emot) programmering Kort introduktion om programmering Några grundbegrepp

Läs mer

Övningar Dag 2 En första klass

Övningar Dag 2 En första klass Kurs i C++ Sid 1 (5) Övningar Dag 2 En första klass Denna övning går ut på att steg för steg bygga upp en klass och skapa objekt. Vi kommer att utgå från en sammansatt datatyp i en struct och parallellt

Läs mer

LULEÅ TEKNISKA UNIVERSITET

LULEÅ TEKNISKA UNIVERSITET LULEÅ TEKNISKA UNIVERSITET Tentamen i Objektorienterad programmering och design Totala antalet uppgifter: 5 Lärare: Håkan Jonsson, Andrey Kruglyak, 491000 Resultatet offentliggörs senast: 2010-04-09. Tillåtna

Läs mer

1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet

1 Texthantering. 1.1 Typen char. Exempel, skriv ut alfabetet 1 Texthantering I detta avsnitt tas det upp två sätt att arbeta med text i C++ program. Det första sättet som behandlas är hanteringen av textfält. Texter i C++ består utav en serie med enstaka tecken

Läs mer

Styrteknik : Funktioner och funktionsblock

Styrteknik : Funktioner och funktionsblock PLC2A:1 Variabler och datatyper Allmänt om funktioner och funktionsblock Programmering av funktioner Programmering av funktionsblock PLC2A:2 Variabler i GX IEC Developer Global and Local Variables Variables

Läs mer

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering.

EDAA20 Programmering och databaser. Mål komprimerat se kursplanen för detaljer. Checklista. Föreläsning 1-2 Innehåll. Programmering. EDAA20 Programmering och databaser Mål komprimerat se kursplanen för detaljer Läsperiod 1 7.5 hp anna.aelsson@cs.lth.se http://cs.lth.se/edaa20 Mer information finns på kursens webbsida samt på det utdelade

Läs mer

LABORATIONSINSTRUKTION

LABORATIONSINSTRUKTION Högskolan Dalarna Elektroteknik LABORATION LABORATIONSINSTRUKTION PLC-styrning av ett minimalt parkeringsgarage KURS El- och styrteknik för tekniker ET 1015 INNEHÅLL LAB NR 4 Ver 1.0 1. Inledning 2. Laborationskortet

Läs mer

Examensarbete 10 poäng C-nivå STUDIE AV VHDL-AMS. Reg.kod: Oru-Te-EXE084-ELI03/04. Emil Berglund och Johan Nygren. Elektronikingenjörsprogrammet 120 p

Examensarbete 10 poäng C-nivå STUDIE AV VHDL-AMS. Reg.kod: Oru-Te-EXE084-ELI03/04. Emil Berglund och Johan Nygren. Elektronikingenjörsprogrammet 120 p Examensarbete 10 poäng C-nivå STUDIE AV VHDL-AMS Reg.kod: Oru-Te-EXE084-ELI03/04 Emil Berglund och Johan Nygren Elektronikingenjörsprogrammet 120 p Örebro vårterminen 2004 Examinator: Sune Bergelin STUDY

Läs mer

Styrprojektet (LEU075) Process 4

Styrprojektet (LEU075) Process 4 Styrprojektet (LEU075) Process 4 Chalmers Lindholmen Mekatronikprogrammet 2004-12-07 Av Christian Gruffman och Kristinn Sigmundsson 1 1. Sammanfattning Syftet med vårat styrprojekt var att lära oss mer

Läs mer

CS - Computer science. Datateknik Informationsbehandling Datalogi Datavetenskap (ÅA 2008)

CS - Computer science. Datateknik Informationsbehandling Datalogi Datavetenskap (ÅA 2008) CS - Computer science Datateknik Informationsbehandling Datalogi Datavetenskap (ÅA 2008) Vad datateknik INTE är: Att studera datorer Att studera hur man skriver datorprogram Att studera hur man använder

Läs mer

A-del motsvarande KS1

A-del motsvarande KS1 MÄLARDALENS HÖGSKOLA Institutionen för elektroteknik Tentamen Mikrodatorteknik CT3760 Datum 2005-10-28 Tid 08.30 12.30 Svar till A- och B-del A-del motsvarande KS1 Uppgift A1. Vad blir resultatet då instruktionen

Läs mer

EDA215 Digital- och datorteknik för Z

EDA215 Digital- och datorteknik för Z EDA25 Digital- och datorteknik för Z Tentamen Måndag 7 december 2007, kl. 08.30-2.30 i M-salar Examinatorer Rolf Snedsböl, tel. 772 665 Kontaktpersoner under tentamen Som ovan. Tillåtna hjälpmedel Häftet

Läs mer

LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen?

LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen? ICT LEGO Robot programmering och felsökning Hur svårt ska det vara att följa den svarta linjen? Daniel Lindfors 12/9/07 dlindf@kth.se Introduktionskurs i datateknik II1310 Sammanfattning Denna laboration

Läs mer

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen)

Ansvarig lärare: Olof Andersson, Telefon 021-101314 (besöker skrivsalen) MÄLRLENS HÖGSKOL Institutionen för elektroteknik Tentamen Mikrodatorteknik T3760 atum 2005-10-28 Tid 08.30 12.30 nsvarig lärare: Olof ndersson, Telefon 021-101314 (besöker skrivsalen) Om du klarat samtliga

Läs mer

Det finns en hemsida. Adressen är http://www.idt.mdh.se/kurser/ct3760/

Det finns en hemsida. Adressen är http://www.idt.mdh.se/kurser/ct3760/ CT3760 Mikrodatorteknik Föreläsning 1 Torsdag 2005-08-25 Upprop. Det finns en hemsida. Adressen är http://www.idt.mdh.se/kurser/ct3760/ Kurslitteratur är Per Foyer Mikroprocessorteknik. Finns på bokhandeln.

Läs mer

CE_O1. Nios II. Enkla assembler-instruktioner.

CE_O1. Nios II. Enkla assembler-instruktioner. IS1500 ösningsförslag till övning CE_O1 2014 CE_O1. Nios II. Enkla assembler-instruktioner. 1.1. Datorarkitektur för Nios II a) Tabell 3 1 i Nios II Processor Reference Handbook visar processorns register:

Läs mer

PROGRAMMERING 2 GRUNDLÄGGANDE SEMANTIK 4

PROGRAMMERING 2 GRUNDLÄGGANDE SEMANTIK 4 Modul 2 Byggstenar PROGRAMMERING 2 GRUNDLÄGGANDE SEMANTIK 4 Byggstenar 4 Nyckelord 4 Tecken 4 Syntax 5 Standardbibliotek 5 Vårt första program 5 Variabler 6 Konstanter 9 Operatorer 9 Övningar 9 Mer operatorer

Läs mer

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION

Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION Programutveckling med Java 7.5 p, ht 2007 (D0019N) STUDIEHANDLEDNING - ALLMÄN INFORMATION Hej, jag heter Ingela Johansson och hälsar dig välkommen till kursen Programutveckling med Java. Den är på 7.5

Läs mer

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704

Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Kontrollskrivning Mikrodatorteknik CDT209 2007-09-20 S2-704 Svar Svar till uppgifterna lämnas på separat papper. En poäng per uppgift. Max 30 poäng. Bonuspoäng beräknas enligt följande tabell: 6-10 poäng

Läs mer

Föreläsning 2. Operativsystem och programmering

Föreläsning 2. Operativsystem och programmering Föreläsning 2 Operativsystem och programmering Behov av operativsystem En dator så som beskriven i förra föreläsningen är nästan oanvändbar. Processorn kan bara ges enkla instruktioner såsom hämta data

Läs mer

Introduktion till PHP

Introduktion till PHP PHP - Grund Copyright 2016 Mahmud Al Hakim mahmud@dynamicos.se www.webacademy.se Introduktion till PHP PHP = PHP: Hypertext Preprocessor PHP är ett programmeringsspråk. PHP är ett skriptspråk som körs

Läs mer