Informationssystem:Stöd för elektronikkonstruktion
Linköpings Tekniska Högskola, 1998-05-16 Ulf Nordström
InledningVad jag vill säga är att det är alltid på nivån ovanför du kan göra de stora vinsterna, sedan är det klart att man kan fila på resultatet... Samma gäller förstås för storleken, jag fick en gång en konstruktion att minska i storlek med en faktor 8 för att systemkonstruktören talade om för mig att ett antal räknare inte behövdes samtidigt -> jag kunde göra dem som en räknare, laddbar, istället för 10 fasta....Tume Römer, Ericsson Components AB
BakgrundDenna rapport är en del av examinationen i kursen elektronikproduktion, projektkurs vid Linköpings Tekniska Högskola. Rapporten är utförd under vårterminen 1998 av Ulf Nordström och Anette Westling.Vi har i denna kurs valt att studera informations- och datorsystems inverkan på konstruktionsprocessen. Orsaken till detta är att vi anser att denna del inte har täckts fullt ut hittills i kursen. När man studerar hur informations- och datorsystem påverkar konstruktionsprocessen finns det två huvudinriktningar som är viktiga att ha i åtanke. För det första bör man ta hänsyn till hur datorer alltmer inverkar på produktionsprocessen, i form av ökad automatisering, sammankopplade maskiner och så vidare. Detta bör man naturligtvis ta hänsyn till redan i konstruktionsfasen. Detta för att fullt ut kunna dra nytta av de möjligheter som erbjuds i produktionsfasen. Detta kommer vi kort att diskutera närmare under rubriken Konstruktion av elektronikprodukter. För det andra erbjuder datorerna en mängd hjälpmedel för det direkta arbete som sker i konstruktionsfasen. Genom olika sorters simuleringsverktyg och CAE-verktyg, men också genom ordbehandlingsprogram och liknande kan arbetet snabbas upp betydligt. Detta kommer vi att diskutera under rubriken Informationssystem som stöd för processen. För att kunna relatera de datoriserade hjälpmedlen till de olika faserna i konstruktionsprocessen ger vi dessutom först en presentation av densamma under rubriken Konstruktionsprocessen. SyfteSyftet med denna rapport är att beskriva och diskutera hur informationssystem kan användas för att underlätta och förbättra arbetet med konstruktion av elektronikkomponenter och system.MetodDenna rapport har främst en beskrivande och delvis förklarande inriktning. Med detta menas att vi har försökt beskriva elektronikkonstruktionsprocessen samt förklarat hur informationssystem kan stödja denna process.KällkritikDet kan vara på sin plats att påpeka att utvecklingen inom elektronikkonstruktion går framåt med rasande hastighet. De källor vi har använt kan därför i delar redan vara inaktuella.Konstruktion av elektronikprodukterKonstruera för automatiserad produktionDet finns tre huvudorsaker till varför man vill automatisera, och datorisera, sina tillverkningsprocesser, nämligen
Det går dock inte att installera automatiserade rutiner utan att göra något åt sina processer i övrigt. Det blir nödvändigt att redan från början, i konstruktionsprocessen förbereda sina produkter för en automatiserad tillverkning. Detta motiveras tydligast genom att ha i åtanke att mellan 75 och 90% av kostnaden för en produkt läggs i konstruktionsfasen. (Landers et al, 1994) Det finns därmed mycket pengar att spara genom att ha koordinera produkt- och processdesign redan från början. Genom att lägga extra tid på dessa moment i början av utvecklingsfasen kan man spara in mycket tid i senare led. Det finns några saker man bör tänka på extra noga när man konstruerar för smidigare automatiserad tillverkning. Dessa presenteras av Landers et al (1994) som:
Design för testbarhetRedan vid syntetiseringen är det viktigt att förbereda konstruktionen för testning, dvs den efter produktion följande kontrollen. Detta kan man till exempel göra genom att realisera SCAN-teknik i ASIC, realisera självtest och anpassa mekaniken för bättre åtkomlighet (access). Genom detta kan lägre testkostnad och kortare felsökning erhållas med förkortad ledtid som följd.KonstruktionsprocessenNedan visas en schematisk bild av konstruktionsprocessen (figur 1).Vi har i processen inte gjort någon uppdelning mellan utveckling och konstruktion. Under konstruktionen sker arbete med abstrakta modeller. Resultatet av denna process är sedan det underlag som ligger till grund för produktion (tillverkning) och underhåll/reparation av färdig produkt.
Figur 1. Konstruktionsprocessen SpecificeraVid all konstruktion är det av största betydelse att arbetet utgår från en väl genomarbetad specifikation. Detta för att klargöra mål och undvika senare missförstånd. Specifikationen kan delas upp ett fyra delar:
Ett överordnat dokument innehållande krav från kund och företagsledning. Ett dokument som listar funktioner och egenskaper ur användarens perspektiv. Ett dokument redovisande planerad realisering och implementering av de funktioner som specificerats i användarspecifikationen. Dokument som används, då så är nödvändigt, för att visa hur delsystem hänger samman. SyntetiseraI detta processteg bestäms vad som ska ingå och hur dessa delar ska samverka. För att beskriva detta krävs dock en användbar terminologi. Denna terminologi kan delas in i tre klasser:
T ex scheman, simuleringsspråk och RTF (Register Transfer Language). Funktionsbeskrivande språk saknar en matematisk struktur vilket gör omöjliggör den systemanalys som följer. T ex FSM (Finite State Machine)-terminologi och reguljära uttryck. Till skillnad från funktionsbeskrivande språk har algoritmtekniker en formell matematisk struktur. T ex Petri-net och tillståndsdiagram. Dessa tekniker är tämligen enkla och lämpar sig bäst för mindre konstruktioner då mängden data annars blir mycket stor. I praktiken används de dock sällan eller aldrig. AnalyseraFör att analysera ett system krävs i de allra flesta fall en simulering. På detta sätt kan man genom att experiment med en modell av systemet analysera det framsyntetiserade systemet. Den högsta nivån man simulerar är systemsimulering, vilket är ett försök att studera systemets uppförande ur användarperspektiv. Vidare kan de enskilda funktionsblocken, i de fall system består av sådana, simuleras. Detta kallas funktionssimulering. Den lägsta nivån systemets simuleras på är logiknivå.Simulering delas upp i rätt och felanalys. Rättanalys avser konstruktionens funktionella uppförande;
ModifieraI de fall systemet vid analys inte visar sig uppfylla de krav på funktioner och egenskaper som specificerats måste systemet modifieras. Därefter analyseras det återigen.Dokumentera![]() Figur 2. Dokumentation Efter att konstruktion av den önskade kretsen är utförd framställs de dokument som krävs för senare produktion och användning. Det är dock inte helt korrekt att utgå från att dokumentationsdelen ligger sist i konstruktionsprocessen. I själva verket sker dokumentation under hela processen, speciellt om det finns datorstöd för detta. De dokument som framställs kan vara av mycket varierande art, och några exempel visas i Figur 2. Dokumentation. Informationssystem som stöd för processenOm man följer den modell av konstruktionsprocessen som tidigare presenterats kan dator- och informationssystem användas som hjälpmedel på flera sätt. Några av hjälpmedlen återkommer i alla faser, medan några är specifika för en enskild fas.De system som är aktuella som stöd för konstruktionsfasen omfattar CAE-, CAD-, CAM- och CAT-verktyg. Utveckling har dessutom gått mot en integrering av dessa verktyg vilket resulterar i CADMAT . Investeringar i detta system kan motiveras med bland annat:
SpecificeraMålet är att använda verktyg så att syntetisering genereras med så hög grad av automatik som möjligt. Specifikationen kan till exempel resultera i en exekverbar specifikation, skriven i C eller någon typ av beteendebeskrivande språk (VHDL exempelvis, eller företagsspecifika internutvecklade språk) (Römer, 1998). Naturligtvis används även vanliga ord- och bildbehandlingsprogram vid skrivandet av kravspecifikationer och liknande. Dessa följer vidare med under hela konstruktionsprocessen som stöd för det fortsatta arbetet.SyntetiseringI samband med syntetisering använd kompilatorer för att överföra funktionsbeskrivningen till en layout.Vid konstruktion av stora system ställs krav på en lämplig uppdelning av planeringsnivåer. Dessa presenteras i punktlistan nedan.
Algoritmen drar ledare i labyrinten bildad av redan dragna ledare och utplacerade komponenter. Möjligheten till optimering med denna metod är enligt vår uppfattning obefintlig. Algoritmen strävar efter att dra vinkelräta linjer. Algoritmen är anpassad för förbindelsedragning vid flerlagerkort. Vid två-lagerkort dras vertikala ledare på det ena lagret och horisontella ledare på det andra. Förbindelse mellan ledarna görs med vias.
Figur 3. Vias mellan lager i två-lagerkort.
Algoritmen bestämmer först komponenters och ledares relativa läge. Därefter utförs en fullständig utplacering. Designmetoder ska enligt Römer (1994) ses som motsvarigheten till en vägbeskrivning. När man färdas på "designstigen" ska man allteftersom processen framskrider kunna välja väg, och därmed typ av hjälpmedel och grad av komplexitet. Detta grundar sig i att en skicklig konstruktör själv kan förfina ett fungerande system framtaget av ett datoriserat hjälpmedel, och fortfarande bör ha den möjligheten om tid och budget finnes. Grundtemat är dock fortfarande att grovarbetet i så stor utsträckning som möjligt bör utföras av datorn. Ett viktigt hjälpmedel under denna fas är ett utbyggt, och utbyggbart, bibliotek av funktioner, komponenter och strukturer. Allt enligt devisen "gör saker en gång". I de flesta program finns ett komponentbibliotek tillgängligt, men det är mycket positivt om även de lösningar som konstruktörerna tidigare gjort sparats och gjorts sökbara. Det krävs dock då att man har en klart definierad struktur hos biblioteket, eftersom det annars löper risk att snabbt bli oöverskådligt. ÅteranvändningI den allt snabbare utveckling som sker på detta område hinner man inte alltid konstruera nytt. Återanvändning blir ett allt viktigare begrepp, och man strävar idag efter att utnyttja tidigare lösningar på allt fler nivåer. Detta innebär att man återutnyttjar allt ifrån kunskap (medarbetare), administrativ dokumentation, specifikationer, strukturer och arkitekturer samt simuleringsmodeller.Det är alltså inte alltid nödvändigt att vid syntetisering av system utgå från ett nolläge. Det finns nämligen idag tre olika konstruktionsmetoder för att tillverka mikrokretsar. Dels kan man göra allting själv, så kallad full costum, helkonstruktion. Det motsatta alternativet är så kallade grindmatriser, där man utgår från en förtillverkad krets och lägger på olika ledningsmönster för att förbinda de olika funktionsenheterna och därmed få fram olika logiska enheter. Den tredje varianten är ett mellanting mellan de två tidigare metoderna; så kallad cellteknologi, standard cell. Denna metod går ut på att man plockar fördefinierade byggblock (celler) ur ett bibliotek och kombinerar dem till den önskade kretsen. På detta sätt kan ett företag som Ericsson få ner kostnaderna för tillverkningen utan att släppa kontrollen över tillverkning och utveckling. Leverantören har nu gjort den stora delen av det kiselnära arbetet redan innan blocken anländer till Ericsson. De färdiga kretsarna blir marginellt större än vid helkonstruktion, men går snabbare att konstruera och har god förutsägbarhet. Enligt Cederquist (1998) blir kostnaderna för ett "standard cell"-projekt ungefär hälften av ett motsvarande helkonstruktionsprojekt.
Figur 4. System/komponent integration Det är naturligtvis inte helt lätt att objektivt mäta och jämföra kostnaden för olika digitala kretsar, men man kan till exempel utgå från priset per logisk grindfunktion. Grundförutsättningen är att använda sig av lagom ny teknik. Den senaste tekniken är ofta billigast, med undantag för den absolut senaste, eftersom ny teknik alltid är som dyrast i början av sin livscykel. Den avgörande faktorn för hur stor och strömförbrukande en krets blir ligger dock alltid i skickligheten hos konstruktörerna. Oavsett hur bra en tillverkningsteknik är kan man alltid slarva bort dess fördelar med en ogenomtänkt konstruktion eller dåliga cellbibliotek. Det gäller därför för företaget att utveckla och återanvända kompetensen hos personalen. AnalysSimulering har ett antal fördelar jämfört med arbete med fysiska prototyper. Några av dessa är;
DokumentationI dokumentationsfasen, som i verkligheten finns med under hela konstruktionsprocessen, är datoriserade hjälpmedel av stor betydelse. Om företaget är utrustat med ett integrerat datasystem går informationen automatiskt vidare dit den ska, annars sker vanligtvis utskrift av informationen som sedan skickas via internpost till berörda personer. I många fall är det tyvärr så att relevanta data för vidare produktion skrivs ut och skickas vidare, för att sedan matas in på nytt i ett annat datasystem.Det är mycket positivt om dokumenteringen automatgenereras av konstruktionssystemet.
Det innebär inte bara att det faktiskt görs, något som
annars lätt bortprioriteras, utan också att det blir tillgängligt
för sökning i de komponent och systembibliotek som tidigare nämnts.
KällförteckningSkriftliga källorCederquist, Lars. Chipet nyckeln till nya telefoner. Kontakten nr. 7, 1998. Elektroniskt tillgängligt (http://www3.ericsson.nl/SE/kon_con/kontakten/kont07_98/k07_08.html)Landers, Thomas et.al. Electronics Manufacturing Processes. Prentice-Hall 1993 Magnhagen, Bengt. CAE- assistans åt elektronikkonstruktörer. Studentlitteratur 1986 Römer, Tume. A study of ASIC design using mentor Graphics Toolset. ISY, LiTH 1994 Muntliga källorRömer, Tume. Projektledare Ericsson Components AB, Maj 1998<- tillbaka |