Informationssystem: 

Stöd för elektronikkonstruktion 

 

 
 
 
 
 
 

Linköpings Tekniska Högskola, 1998-05-16 

Ulf Nordström 
Anette Westling 


Inledning

Vad 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

Bakgrund

Denna 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. 

Syfte 

Syftet 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. 

Metod

Denna 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ällkritik

Det 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 elektronikprodukter

Konstruera för automatiserad produktion

Det finns tre huvudorsaker till varför man vill automatisera, och datorisera, sina tillverkningsprocesser, nämligen 
  • kvalitet
  • produktivitet
  • ledtider
Kvaliteten främjas av att en automatiserad process producerar produkter med jämnare kvalitet och mindre avvikelser jämfört med manuell tillverkning. Produktiviteten blir högre eftersom automatiseringen oftast innebär en högre produktionstakt och större produktion per timme direkt arbete. Ledtiderna i sin tur kan kortas i och med att omställningen och flexibiliteten ofta ökas i ett automatiserat system och att tiden mellan order och leverans därmed blir kortare. 

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: 

  • Minimera antalet delar
  • Minimera monteringsytor
  • Konstruera för top-down assembly
  • Maximera delarnas hoppassning
  • Förbättra monteringstillgänglighet
  • Konstruera för modularitet
  • Konstruera för standardverktyg

Design för testbarhet

Redan 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. 

Konstruktionsprocessen

Nedan 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

Specificera

Vid 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: 
  • Kravspecifikation

  • Ett överordnat dokument innehållande krav från kund och företagsledning. 
  • Användarspecifikation

  • Ett dokument som listar funktioner och egenskaper ur användarens perspektiv.
  • Systemspecifikation

  • Ett dokument redovisande planerad realisering och implementering av de funktioner som specificerats i användarspecifikationen.
  • Apparatspecifikationer

  • Dokument som används, då så är nödvändigt, för att visa hur delsystem hänger samman.
I specificeringen kan även viss syntetisering och analysering vara nödvändig. Detta för att utröna hur problem kan lösas och vilka algoritmer och arkitekturer som kan vara aktuella. 

Syntetisera 

I 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: 
  • Funktionsbeskrivande 

  • 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. 
  • Algoritmtekniker 

  • T ex FSM (Finite State Machine)-terminologi och reguljära uttryck. Till skillnad från funktionsbeskrivande språk har algoritmtekniker en formell matematisk struktur. 
  • Grafteoretiska tekniker 

  • 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. 

Analysera 

Fö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; 
  • logiskt 
  • dynamiskt 
  • toleransmässigt 
Felanalys syftar till att beskriva kretsen feluppförande det vill säga hur kretsen beter sig vid produktionsfel som till exempel kortslutning och avbrott. 

Modifiera 

I 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 processen 

Om 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: 

  • Tidsvinster 
  • Kvalitetshöjning 
  • Miniatyrisering 
Nedan beskrivs systemen uppdelade på de olika stegen i konstruktionsprocessen. 

Specificera 

Må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. 

Syntetisering 

I 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. 

  • Systemuppdelning 
  • Komponentuppdelning 
  • Förbindelseplanering 
Den mest övergripande nivån är en systemuppdelning som beskriver hur olika funktionsblock samspelar. Dessa block bör placeras så att bästa signalsamband kan erhållas genom att samla liknande funktionsblock i systemet. Inom respektive block sker en komponentplacering. De komponenter som placeras kan vara såväl standardkomponenter som placeras på ett kretskort som celler (se ovan) för placering på chip. Målet vid placeringen är till ledningsdragning, men även möjlighet till utfläktning av värme och lödtekniska fenomen som skuggning måste tas hänsyn till. Den lägsta nivån för planering är förbindelseplanering det vill säga planering för ledningsdragning. För detta finns fyra automatiska algoritmer. Dessa presenteras nedan. 
  • Labyrintsökningsalgoritmer 

  • 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. 
  • Linjesökningsalgoritmer

  • Algoritmen strävar efter att dra vinkelräta linjer. 
  • Kanalsökningsalgoritmer 

  • 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. 

  • Topologiska algoritmer 

  • Algoritmen bestämmer först komponenters och ledares relativa läge. Därefter utförs en fullständig utplacering. 
Då livstiden för integrerade kretsar blir kortare och kortare minskar naturligtvis den tillgängliga tiden för design av kretsarna. I takt med denna utveckling framställs fler och mer avancerade designhjälpmedel som stöd för konstruktören. Dessa hjälpmedel ger konstruktören möjlighet att skriva på en högre nivå och låta det datoriserade systemet automatiskt konvertera beskrivningen till lägre nivå. Själva idén med ett sådant system är att överföra resurser från de delar som en dator lätt klarar av och istället låta konstruktören fokusera sitt arbete på utvecklingen av den aktuella kretsen. 

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ändning 

I 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. 

Analys 

Simulering har ett antal fördelar jämfört med arbete med fysiska prototyper. Några av dessa är; 
  • Analys kan ske innan konstruktionen har realiserats. 
  • Ej risk för produktionsfel vid analys. 
  • Enkelt och snabbt 
Nackdelarna är dock att modellen kan vara omständlig att skriva och att det kan vara svårt att beskriva den abstrakta modellen tillräckligt noggrant. 

Dokumentation 

 I 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. 
I ett integrerat system kan en tillverkningsorder läggas efter konstruktionen, vilket då sänder impulser till företagets övriga system. Det kan till exempel gå signaler till lagersystemet, där material bokas upp, och vidare till inköpssystemet om material saknas eller speciella komponenter behöver köpas in. I det ideala systemet finns dessutom en koppling till leverantörernas system där produktionsplaneringen får direkt tillgång till den nya ordern. Detsamma gäller naturligtvis produktionsplaneringen på det egna företaget, där MPS-systemet ger underlag till planering. 


Källförteckning 

Skriftliga källor 

Cederquist, 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ällor 

Römer, Tume. Projektledare Ericsson Components AB, Maj 1998 
 Upp

<- tillbaka