NL8801116A - Werkwijze en inrichting voor het converteren van omtrekgegevens naar rastergegevens. - Google Patents

Werkwijze en inrichting voor het converteren van omtrekgegevens naar rastergegevens. Download PDF

Info

Publication number
NL8801116A
NL8801116A NL8801116A NL8801116A NL8801116A NL 8801116 A NL8801116 A NL 8801116A NL 8801116 A NL8801116 A NL 8801116A NL 8801116 A NL8801116 A NL 8801116A NL 8801116 A NL8801116 A NL 8801116A
Authority
NL
Netherlands
Prior art keywords
command
memory
data
raster
processor
Prior art date
Application number
NL8801116A
Other languages
English (en)
Original Assignee
Oce Nederland Bv
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oce Nederland Bv filed Critical Oce Nederland Bv
Priority to NL8801116A priority Critical patent/NL8801116A/nl
Priority to EP89200971A priority patent/EP0344827B1/en
Priority to DE89200971T priority patent/DE68907383T2/de
Priority to JP1105691A priority patent/JP2825268B2/ja
Publication of NL8801116A publication Critical patent/NL8801116A/nl
Priority to US07/863,524 priority patent/US5386510A/en

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06TIMAGE DATA PROCESSING OR GENERATION, IN GENERAL
    • G06T1/00General purpose image data processing
    • G06T1/20Processor architectures; Processor configuration, e.g. pipelining
    • GPHYSICS
    • G09EDUCATION; CRYPTOGRAPHY; DISPLAY; ADVERTISING; SEALS
    • G09GARRANGEMENTS OR CIRCUITS FOR CONTROL OF INDICATING DEVICES USING STATIC MEANS TO PRESENT VARIABLE INFORMATION
    • G09G5/00Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators
    • G09G5/36Control arrangements or circuits for visual indicators common to cathode-ray tube indicators and other visual indicators characterised by the display of a graphic pattern, e.g. using an all-points-addressable [APA] memory
    • G09G5/39Control of the bit-mapped memory
    • G09G5/393Arrangements for updating the contents of the bit-mapped memory

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Image Generation (AREA)
  • Record Information Processing For Printing (AREA)
  • Image Processing (AREA)

Description

e
N
Ψ 1 8806
Océ-Nederland B.V., te Venlo
Werkwij ze enjnrichting voor het converteren van omtrekgegevens naar rastergegevens
De uitvinding betreft een werkwijze voor het converteren van gegevens omtrent de omtrek van beelddelen (objecten) naar rastergegevens waarbij een raster is opgebouwd uit een aantal scanlijnen, in een inrichting omvattende een centrale eenheid, ten minste twee parallel -5 processoren die elk zijn voorzien van een lokaal bitmap geheugen dat is onderverdeeld in rastergeheugenlijnen waarin de overeenkomstige scanlijnen kunnen worden opgeslagen, en een communicatiekanaal dat de centrale eenheid en de processoren met elkaar verbindt, en betreft tevens een inrichting voor het converteren van gegevens omtrent de 10 omtrek van beelddelen (objecten) naar rastergegevens waarbij een raster is opgebouwd uit een aantal scanlijnen, omvattende - een centrale eenheid, ingericht voor het genereren en verzenden van een rasteriseringsopdracht voor ten minste een deel van het object, - ten minste twee parallel-processoren die elk zijn voorzien van een 15 rekeneenheid en een lokaal bitmap geheugen dat is onderverdeeld in rastergeheugenlijnen waarin de overeenkomstige scanlijnen kunnen worden opgeslagen, en die elk zijn ingericht voor het op basis van de rasteriseringsopdracht genereren van een overeenkomstige tekenopdracht met gegevens omtrent de positie in het bitmap geheugen 20 waar het resultaat van deze tekenopdracht moet worden opgeslagen, en voor het opslaan van dit resultaat in het lokale bitmap geheugen, - en een communicatiekanaal dat de centrale eenheid en de parallel-processoren met elkaar verbindt.
Een dergelijke inrichting maakt deel uit van een rasterbeeldprocessor 25 zoals toegepast bij printers en beeldschermen waaraan vanuit een bewerkingstation gegevens over af te drukken karakters of figuren (objecten) in de vorm van omtrek-beschrijvingen zoals vectorbeschrij-vingen worden toegevoerd. De printer (bijvoorbeeld een laserprinter) is ingericht om lijnsgewijs een gemoduleerde lichtstraal over een 30 lichtgevoelig oppervlak af te buigen. Door het lichtgevoelig oppervlak loodrecht op de afbuigrichting voort te bewegen kan een complete pagina beeldmatig worden belicht en volgens een bekende methode op een ontvangstblad worden afgedrukt. De omtrek-beschrijvingen moeten daar- :8801116 'I* 2 toe eerst worden geconverteerd in raster-gegevens. Deze rastergegevens worden in een pagina groot bitmap geheugen opgeslagen. De positie van elk beeldpunt op het lichtgevoelig oppervlak stemt overeen met de positie van het geheugenelement in het geheugen waar de informatie van 5 dat beeldpunt is opgeslagen. Om een snelle printer te kunnen realiseren moet een snelle rasterbeeldprocessor worden toegepast. Een voorbeeld van een dergelijke rasterbeeldprocessor is beschreven in WO 87/0215.9.
Deze rasterbeeldprocessor is gebaseerd op een parallele architektuur.
10 Elke beeldprocessor bewerkt een vast toegewezen deel (lokaal geheugen) van dit bitmapgeheugen. De conversie van een object geschiedt op basis van dit aan elke deel processor vast toegewezen lokaal geheugen. Een deel processor krijgt slechts dat deel van het object toegevoerd dat hoort bij het bij die deel processor behorende lokale bitmapgeheugen.
15 Het rekenwerk, noodzakelijk om dat lokaal bitmapgeheugen te vullen geschiedt op de deel processor die fysiek met dat lokaal bitmapgeheugen is gekoppeld.
Bij de conversie van een object in een dergelijk systeem kunnen drie aktiviteiten worden onderscheiden: 20 a) het doorgeven van informatie van het object aan de processoren, b) het berekenen van de te vullen rastergeheugenlijnen in de lokale geheugens, en c) het vullen van de rastergeheugenlijnen met een patroon van bits overeenkomend met dat deel van het object dat voor dat deel van het 25 bitmapgeheugen bedoeld was.
De stappen b) en c) worden slechts dan door dezelfde deel processor verricht, indien ook het vullen van het bitmapgeheugen plaats moet vinden via die processor.
Ongeacht de wijze waarop de rastergeheugenlijnen van het bit-30 mapgeheugen over de beschikbare deelprocessoren verdeeld worden, er zullen altijd objecten zijn die een zodanige vorm hebben dat niet iedere deel processor in gelijke mate bij de raster-conversie van het object betrokken is. Dit leidt uiteindelijk tot een inefficiënt pro-cessorgebruik want er zijn dan gemiddeld een aantal processoren inac-35 tief.
Het doel van de uitvinding is om te komen tot een efficiënter pro-cessorgebruik.
.8801116 » 3
Dit doel wordt volgens de uitvinding in een werkwijze volgens de aanhef bereikt door het voor ten minste een deel van het object genereren van een rasteriseringsopdracht in de centrale eenheid, het verzenden van deze rasteriseringsopdracht over het communicatie-5 kanaal, het door een momentaan niet belaste eerste paral!el-processor doen uitvoeren van deze rasteriseringsopdracht waarbij ten minste één overeenkomstige tekenopdracht wordt gegenereerd die tevens gegevens omvat over de positie in het bitmap geheugen waar het resultaat van deze tekenopdracht moet worden opgeslagen, het verzenden van deze 10 tekenopdracht over het communicatiekanaal en het uitvoeren van deze tekenopdracht in een tweede parallel-processer waarbij het lokale bitmap geheugen wordt gevuld met rastergegevens omtrent ten mi nste het ene deel van het object.
Ten aanzien van de inrichting wordt het doel volgens de uitvinding bereikt 15 met een inrichting volgens de aanhef waarbij elke parallel-processor is voorzien van een communicatie-eenheid die in afhankelijkheid van de belastingstoestand van de rekeneenheid een rasteriseringsopdracht naar een volgende paral!el-processor over het communicatiekanaal verzendt.
Hiermee wordt bereikt dat een aangeboden pagina bestaande uit omtrek-20 beschrijvingen, sneller kan worden geconverteerd en in het bitmap-geheugen kan worden geschreven, waardoor de afdruksnelheid toeneemt.
Deze en andere voordelen zullen hierna worden toegelicht aan de hand van figuren, waarin
Fig. 1 een schematische weergave van een inrichting voor het conver-25 teren van gegevens omtent de omtrek van beeldde!en naar rastergegevens is,
Fig. 2 een schematische weergave van een parallel-processor is,
Fig. 3 een meer gedetailleerde weergave van een paral lel-processor volgens Fig. 2 is, 30 Fig. 4 een schematische weergave van een bitmap geheugen is, en Fig. 5 een schematische weergave is van de processen die in een parallel-processor kunnen worden uitgevoerd.
’.8&01116 * * 4
In Fig. 1 is schematisch een inrichting voor het converteren van gegevens omtrent de omtrek van beelddelen (objecten) naar rastergege-vens (scanlijnen) weergegeven. Een centrale eenheid 10 is via een communicatie-kanaal 20 met een aantal parallel-processoren 11, 12, 13 5 verbonden. Elke paral!el-processor bevat een communicatie-eenheid 21, 22, 23, een rekeneenheid, 24, 25, 26 en een lokaal bitmap geheugen 27, 28, 29.
Elk lokaal bitmap geheugen 27, 28, 29 bevat een deel van een paginagroot bitmap geheugen waarin beeldgegevens omtrent een hele pagina 10 kunnen worden opgeslagen. Een beeld van een pagina met een grootte van ca. 20 x 30 cm bevat aldus 4000 x 6000 beeldpunten of pixels (20 pixels/mm). Deze pixels zijn gerangschikt in 4000 scanlijnen, elk 6000 pixels lang. Bij n lokale bitmap geheugens bevat elk lokaal bitmap geheugen beeldgegevens omtrent 4000/n scanlijnen. Bij acht 15 lokale bitmap geheugens en dus ook acht paral!el-processoren, zal elk lokaal bitmap geheugen beeldgegevens van vijfhonderd scanlijnen bevatten.
In Fig. 2 is schematisch een paral lel-processor 11 weergegeven.
Deze paral!el-processor 11 bevat een communicatie-eenheid 21 die met 20 het communicatiekanaal 20 en met de rekeneenheid 24 is verbonden. De rekeneenheid 24 is met een lokaal bitmap geheugen 27 verbonden. Dit lokaal bitmap geheugen 2:7 is onderverdeeld in een aantal rasterge-heugenlijnen 30 t/m 37 die elk de beeldgegevens omtrent één scanlijn kunnen bevatten. Zo bevat rastergeheugenlijn 30 beeldgegevens van de 25 eerste scanlijn, rastergeheugenlijn 31 beeldgegevens van de tweede scanlijn, enzovoorts. Dit lokaal bitmap geheugen 27 kan dus beeldgegevens van bijvoorbeeld de eerste acht scanlijnen van een pagina bevatten. Een tweede (niet weergegeven) parallel-processor is voorzien van een tweede lokaal bitmap geheugen dat de beeldgegevens van de 30 volgende acht scanlijnen van een pagina kan bevatten, enzovoorts.
Wordt een rasteriseringsopdracht over communicatiekanaal 20 aan de eerste parallel-processor 11 en aan de communicatie-eenheid 21 toegevoerd, terwijl de rekeneenheid 24 niet in werking is, dan wordt deze rasteriseringsopdracht aan de rekeneenheid 24 toegevoerd en aldaar 35 uitgevoerd. (Schematisch met blok 42 weergegeven). Het resultaat van deze rasteriseringsopdracht is dat ten minste één tekenopdracht wordt . 8801 1 « 5 gegenereerd, waarbij die tekenopdracht tevens gegevens bevat over de plaats die het aldus te genereren beelddeel moet innemen in het bitmap geheugen. Als voorbeeld wordt een rasteriseringsopdracht gekozen waarbij een figuur moet worden geplaatst in rastergeheugenlijnen overeenkomend 5 met scanlijnen 17 t/m 23. Deze tekenopdrachten worden vervolgens over het communicatiekanaal 20 verzonden. Elk communicatie-eenheid van elke parallel-processor bevat vergelijkingsmiddelen 45 die de plaatsgegevens in de tekenopdracht vergelijken met de plaatsgegevens van de rastergeheugenlijnen die bij die paral!el-processor behoren. Bij 10 overeenstemming (in het gekozen voorbeeld zal dit bij de derde parallel-processor het geval zijn) wordt deze tekenopdracht aan de betreffende rekeneenheid toegevoerd. Indien deze overeenstemming ontbreekt, zal de tekenopdracht naar een volgende paral!el-processor worden doorgestuurd.
15 De tekenopdracht wordt vervolgens in de rekeneenheid uitgevoerd (schematisch met blok 43 weergegeven) en doorgegeven aan de bitmap vuiler (schematisch weergeven met blok 44) die de beeldgegevens op de juiste posities in de rastergeheugenlijnen van het lokale bitmap geheugen 27 plaatst.
20 De rekeneenheid 24 bevat tevens een inrichting waarmee de belastingstoestand van de rekeneenheid kan worden bepaald en aan de communicatie-eenheid 21 en via deze aan de centrale eenheid kan worden medegedeeld. Indien bij een nieuwe rasteriseringsopdracht, die over het communicatiekanaal 20 wordt toegevoerd bijvoorbeeld de eerste 25 parallel-processor belast is, dan wordt deze rasteriseringsopdracht doorgezonden naar de tweede parallel-processor, enzovoorts, net zo lang tot dat de opdracht bi j een niet belaste paral lel-processor aankomt. Deze voert vervolgens de rasteriseringsopdracht uit,
De uitvoering van een rasteriseringsopdracht hoeft dus niet te 30 geschieden op die parallel-processor waar de uiteindelijke tekenopdracht moet worden uitgevoerd. Hiermee wordt bereikt dat de belasting evenwichtiger over de paral!el-processoren wordt verdeeld.
Om een nog evenwichtiger verdeling van de processen over de parallel-processoren te bereiken kunnen de rasterlijnen op een andere 35 manier over de lokale bitmap geheugens worden verdeeld. Een pagina bevat meestal kantlijnen waar geen beelddelen hoeven te worden gevuld, zodat een parallel-processor die voor dit deel is bestemd vrijwel geen tekenopdrachten hoeft uit te voeren.
.8001116 *
V
6
Bij bijvoorbeeld tien parallel-processoren kan het lokale bitmap geheugen van de eerste parallel-processor de rastergeheugenlijnen 1, 11, 21, 31 enz. omvatten, de tweede parallel-processor de rastergeheugenlijnen 2, 12, 22, 32 enz. Ook andere verdelingen kunnen voor-5 delen bieden afhankelijk van de in bepaalde gevallen meest voorkomende paginavullingen.
De boven beschreven inrichting is zeer flexibel inzetbaar. Indien er grotere pagina's moeten worden verwerkt, of indien grotere oplossende vermogens worden geëist, kunnen eenvoudig meer paral 1 el -10 processoren worden toegevoegd.
In Fig. 3 is een paral lel-processor meer gedetailleerd schematisch weergegeven.
Een dergelijke paral!el-processor is een Transputer microcomputer van de firma Inmos Limited (GB) en omvat een processor met geheugen in de 15 vorm van een RAM als ook een aantal serieële communicatie aansluitingen voor externe communicatie. De Transputer 50 omvat een CPU 56 met een leesgeheugen 55 (ROM) en is via een intern bussysteem 54 met een extern-geheugen-interface 60, intern lees- en schrijfgeheugen 58 (RAM) en intern lees-geheugen 59 (ROM), alsook met een aantal serieële com-20 municatieaansluitingen 51 verbonden. Bovendien bevat de Transputer 50 nog een synchronisatie schakeling 57. Het totale geheugen is ten minste 4 K bytes groot zodat de CPU 56 zonder extern geheugen kan werken. Het externe-geheugen-interface 60 is via een aantal aansluitingen 61 met een deel van een pagina bitmap systeem verbonden. Via de serieële 25 communicatieaansluitingen 51 kunnen de Transputers aan elkaar gekoppeld worden teneinde een netwerk te vormen. Elke serieële communicatieaansl ui ting is voorzien van een ingangslijn 52 en een uitgangslijn 53, welke gezamenlijk het eerder genoemde communicatiekanaal vormen. De werking van een dergelijke Transputer is 30 bijvoorbeeld beschreven in de Europese octrooiaanvrage 0 141 660.
Met behulp van Fig. 4 zal de werkwijze voor het converteren en de implementatie van het overeenkomstige algoritme aan de hand van een voorbeeld worden beschreven. In deze figuur is schematisch een bitmap van een hele pagina weergegeven met 2000 rastergeheugenlijnen die op 35 de x-as zijn aangegeven. Elke rastergeheugenlijn bevat 2800 pixels (op de y-as aangegeven). Met x=4QQ is de vierhonderdste rastergeheugenlijn aangegeven. In de navolgende processen wordt met scanlijn de lijn bedoeld welke overeenkomt met de rastergeheugenlijn in de bitmap.
»8801116 7
In de bitmap moet een object, bijv. driehoek ABC worden getekend en vervolgens geheel worden opgevuld. De rastergeheugenlijnen van de bitmap zijn met bijvoorbeeld vier (niet weergegeven) parallel-processoren verbonden, PI, P2, P3 en P4.
5 Processor PI is verbonden met rastergeheugenlijn 0,4,8,12,16,20 ____ enz.
Processor P2 is verbonden met rastergeheugenlijn 1,5,9,13,17 .... enz.
Processor P3 is verbonden met rastergeheugenlijn 2,6,10,14,18 ... enz.
Processor P4 is verbonden met rastergeheugenlijn 3,7,11,15,19 ... enz.
De hoekpunten A,B en C worden weergegeven door de coördinaten in de 10 bitmap, dus A (400,1200); B (1200,1200) en C (800,2000).
Het algoritme omvat een aantal processen, die nader gespecificeerd zullen worden. De centrale eenheid verzorgt het proces schedule. Dit proces distribueert het object, bestaande uit een rij getallen, naar PI, P2, P3 en P4. Bij de driehoek ABC luidt het distributie-commando 15 als volgt: fill (400,1200) (1200,1200) (800,2000) (-1,-1). Dit commando bevat de hoekpunten van de te schrijven driehoek en geeft bovendien aan dat de driehoek gevuld moet worden. (-1,-1) geeft het einde van het commando aan.
In Fig. 5 zijn de processen in een paral!el-processor 80 in samenhang 20 met de processen in de centrale eenheid 81 weergegeven. Het proces Schedule 82 distribueert een object (afkomstig uit bijvoorbeeld een file) naar de overige processoren. Dit object is gespecificeerd aan de hand van hoekpunten, bestaande uit een x-coördinaat en een y-coördinaat. Alle x-coördinaten worden gesorteerd in een lijst, waar-25 bij opeenvolgende x-coördinaten een interval van scanlijnen bepalen. Tevens bepaalt iedere x-coördinaat afzonderlijk een apart te rasteri-seren scanlijn. De verzameling van deze intervallen en apart te rasteriseren scanlijnen vormen de opdrachten voor de overige processoren. Deze opdrachten worden naar processoren gestuurd die door 30 Schedule als "werkloos" zijn geregistreerd. Zodra een opdracht naar processor i gestuurd is, wordt deze als "bezig" geregistreerd. Als processor i gereed is met zijn opdracht, stuurt deze een teken naar schedule, waarna processor i weer als "werkloos" wordt geregistreerd. Zolang er nog opdrachten over zijn, worden deze naar processoren 35 gestuurd die "werkloos" zijn.
Op de parallel-processoren PI t/m P4 draaien een 5-tal andere processen: :.880 me 8 * het communicatie-algoritme (conti en com2) 83,84, het scanlijnalgoritme (do.line) 88, het splitsintervalalgoritme (split.interval) 85, het tekeninterval algoritme (do.interval) 86, en 5 het bitmapvulalgoritme (draw) 87.
Het communicatieproces coml 83 op een overige processor kan objecten ontvangen afkomstig van een linkerprocessor en lokaal opslaan en eventueel doorgeven aan een rechter processor. Het kan een rasteri-seringsopdracht afkomstig van schedule doorgeven aan het lokale 10 do.Tine-, of split.interval proces indien de opdracht voor deze processor bestemd was, of aan een rechter processor. En het kan een tekenopdracht afkomstig van een linker processor doorgeven aan het lokale bitmapvulproces draw 87 of doorgeven aan een rechter processor, afhankelijk van de in de tekenopdracht geadresseerde processor. Het 15 kan een do.interval-opdracht krijgen, die altijd zowel naar het lokale do.interval 86 proces, alsook naar de rechter processor doorgegeven wordt. Tevens kan het vanuit het lokale do.line 88 proces een tekenopracht naar een rechter processor doorgeven en vanuit het split.interval 85 proces een do.interval opdracht.
20 Het communicatieproces com2 84 ontvangt tekenopdrachten van rechter processoren en geeft deze door aan een linker processor of aan het lokale draw 87 proces. Do.interval opdrachten worden zowel naar links doorgegeven als naar het lokale do.interval 86 proces. Tokens die aangeven dat een bepaalde processor gereed is, (afkomstig van zowel 25 een rechter processor als het lokale do.line 88 of split.interval 85 proces) worden altijd naar links doorgegeven, en komen uiteindelijk bij Schedule 82 aan.
Het do.line 88 proces op een overige processor krijgt een rasteri-seringsopdracht voor een scanlijn met hoekpunten van het com-30 municatieproces en genereert hiervoor tekenopdrachten. Deze tekenopdrachten gaan ofwel naar het lokale draw 87 proces, of naar het communicatieproces coml 83 om het naar een rechter processor te sturen, of naar com2 84 om het naar een linker processor te sturen.
Het split.interval 85 proces op een overige processor krijgt een 35 rasteriseringsopdracht voor een interval en genereert hiervoor nieuwe rasteriseringsopdrachten, do.interval, voor het lokale do.interval proces 86, en via coml 83 en com2 84 voor de overige , 8801 1 16 Γ 9 linker en rechter processoren. Een do.interval opdracht bestaat uit een extra pakket getallen die indices representeren van de object informatie, te weten de beginpunten van de lijnen die het betreffende interval doorsnijden. Aangezien alle processoren het complete object 5 hebben, ligt de informatie hierin eenduidig vast. Alle processoren met een of meer scanlijnen in het interval gebied kunnen nu met gebruikmaking van "edge coherence" (Foley) zeer snel tekeninstructies genereren voor het lokale draw 87 proces.
Het do.interval 86 proces krijgt een do.interval opdracht van het 10 communicatieproces coml 83 of com2 84 of van het lokale split.interval proces 85, samen met een tabel indices die aangeven welke lijnen van het polygon het interval doorsnijden, en genereert hieruit tekenopdrachten uitsluitend voor het lokale bitmapvulproces.
Het lokale draw 87 proces tenslotte vervangt in het bitmapgeheugen een deel, 15 dat correspondeert met dat deel van de scanlijn zoals dat in de tekenopdracht is gespecificeerd.
Terugkerende naar Fig. 4 luidt het algoritme als volgt: 1. Invoer voor schedule: fill (400,1200) (1200,1200) (800,2000) (-1,-1) 2. Schedule leest het object en kopieert de beschrijving naar de 20 deelprocessoren PI t/m P4. Terwijl het object gekopieerd wordt, sorteert en splitst schedule het object op in een aantal stukken, in dit geval:
R1 scanlijn x=40Q
R2 interval x=401,799 25 R3 scanlijn x=8Q0 R4 interval x=801,1199 R5 scanlijn x=1200 R1 t/m R5 zijn de opdrachten die schedule aan de deelprocessoren doorgeeft.
30 Schedule verstuurt opdrachten Ri zolang er processoren zijn die geen opdrachten uitvoeren of tot de opdrachten op zijn. Stel dat opdracht R1 op PI komt, R2 op P2, R3 op P3 en R4 op P4, dan kan R5 nog niet verstuurd worden (alle processoren zijn met een opdracht bezig). De 4 processoren kunnen gelijktijdig voor ieder deel uitre-35 kenen welke stukken gevuld moeten worden. Dit resulteert in tekenopdrachten.
4. PI produceert de tekenopdracht D400,1200,1200 (vul op scanlijn 400, pixels 1200 t/m 1200). Aangezien scanlijn 400 in Bitmap PI valt wordt .8801116 t 10 deze intern afgehandeld. P2 produceert achtereenvolgens D401,1200,1202 en deze opdracht wordt op P2 uitgevoerd; D402,1200,1204 wordtdoor P2 verstuurd, door P3 opgevangen en uitgevoerd; D403,1200,1206 wordt ook verstuurd en komt op P3 5 terecht, wordt doorgestuurd en komt op P4 waar hij wordt uitgevoerd, etc. Tegelijkertijd produceert P3 D800,1200,1200 die uiteindelijk op PI wordt uitgevoerd. PI en P3 zouden nu klaar zijn zodat een van deze R5 kan gaan uitvoeren. P4 produceert gelijktijdig D801,1200,1998 die naar P2 verstuurd wordt en D802,1200,1996 die 10 naar P3 verstuurd wordt, etc.
Iedere keer als een processor een Ri heeft voltooid, wordt schedule hiervan op de hoogte gesteld. Als alle Ri zijn uitgevoerd, kan het volgende object ingelezen, gekopieerd en gerasteriseerd worden.
Op overeenkomstige wijze kunnen alle voorkomende objecten snel in een 15 bitmap geheugen worden gegenereerd.
De uitvinding is niet beperkt tot de beschreven uitvoeringsvormen en de vakman zal vele varianten hierop kunnen bedenken, die echter alle zullen vallen onder de hierna volgende conclusies.
.8801116

Claims (7)

1.Werkwijze voor het converteren van gegevens omtrent de omtrek van beeldde!en (objecten) naar rastergegevens waarbij een raster is opgebouwd uit een aantal scanlijnen, in een inrichting omvattende een centrale eenheid, ten minste twee paral lel-processoren die elk zijn 5 voorzien van een lokaal bitmap geheugen dat is onderverdeeld in rastergeheugenlijnen waarin de overeenkomstige scanlijnen kunnen worden opgeslagen en een communicatiekanaal dat de centrale eenheid en de processoren met elkaar verbindt, waarbij de werkwijze wordt gekenmerkt door de volgende stappen: 10. het voor ten minste een deel van het object genereren van een rasteriseringsopdracht in de centrale eenheid (10), - het verzenden van deze rasteriseringsopdracht over het communicatiekanaal (20), - het door een momentaan niet belaste eerste paral lel-processor doen 15 uitvoeren van deze rasteriseringsopdracht waarbij ten minste een overeenkomst!ge tekenopdracht wordt gegenereerd die tevens gegevens omvat over de positie in het bitmap geheugen (27,28,29) waar het resultaat van deze opdracht moet worden opgeslagen, - het verzenden van deze tekenopdracht over het communicatiekanaal 20 (20), en - het uitvoeren van deze tekenopdracht in een tweede paral!el-processor waarbij het lokale bitmap geheugen (27,28,29) wordt gevuld met rastergegevens omtrent ten minste het ene deel van het object.
2. Werkwijze volgens conclusie 1, gekenmerkt door het voor elk 25 object definiëren van een aantal hoekpunten.
3. Werkwijze volgens conclusie 2, gekenmerkt door het voor elk hoekpunt van het object en voor elk gebied dat zich tussen twee hoekpunten bevindt genereren van een rasteriseringsopdracht.
4. Werkwijze volgens conclusie 3, gekenmerkt door het sorteren 30 van de hoekpunten in een volgorde die overeenkomt met hun positie loodrecht op de scanlijnen.
5. Inrichting voor het converteren van gegevens omtrent de omtrek van beelddelen (objecten) naar rastergegevens waarbij een raster is opgebouwd uit een aantal scanlijnen, omvattende 35. een centrale eenheid, ingericht voor het genereren en verzenden van een rasteriseringsopdracht voor ten minste een deel van het object, -^jgin^t| paral lel-processoren die elk zijn voorzien van een β rekeneenheid en een lokaal bitmap geheugen dat is onderverdeeld in rastergeheugenlijnen waarin de overeenkomstige scanlijnen kunnen worden opgeslagen, en die elk zijn ingericht voor het op basis van de rasteriseringsopdracht genereren van een overeenkomstige teken-5 opdracht met gegevens omtrent de positie in het bitmap geheugen waar het resultaat van deze tekenopdracht moet worden opgeslagen, en voor het opslaan van dit resultaat in het lokale bitmap geheugen, - en een communicatiekanaal dat de centrale eenheid en de parallel-processoren met elkaar verbindt, met het kenmerk, 10 dat elke parallel-processor (11,12,13) is voorzien van een communicatie-eenheid (21,22,23) die in afhankelijkheid van de belastingstoestand van de rekeneenheid (24,25,26) een rasteriseringsopdracht naar een volgende paral!el-processor over het communicatiekanaal (20) verzendt.
6. Inrichting volgens conclusie 5, met het kenmerk, dat elke communicatie-eenheid (21,22,23) vergelijkingsmiddelen omvat waaraan gegevens over de positie van de rasterlijnen in het lokale bitmap geheugen (27,28,29) kunnen worden toegevoerd en hierin vergeleken kunnen worden met de plaatsgegevens in een tekenopdracht en waarbij bij 20 overeenstemming de tekenopdracht aan de rekeninrichting (24,25,26) wordt toegevoerd.
7. Inrichting volgens conclusie 5, met het kenmerk, dat elk lokaal bitmap geheugen (27,28,29) een aantal rastergeheugenlijnen omvat waarbij die rastergeheugenlijnen zijn ingericht om een aantal 25 scanlijnen op te nemen die niet-aaneengesloten over het beeld zijn verdeeld. .8801116
NL8801116A 1988-04-29 1988-04-29 Werkwijze en inrichting voor het converteren van omtrekgegevens naar rastergegevens. NL8801116A (nl)

Priority Applications (5)

Application Number Priority Date Filing Date Title
NL8801116A NL8801116A (nl) 1988-04-29 1988-04-29 Werkwijze en inrichting voor het converteren van omtrekgegevens naar rastergegevens.
EP89200971A EP0344827B1 (en) 1988-04-29 1989-04-17 Method of and apparatus for converting outline data to raster data
DE89200971T DE68907383T2 (de) 1988-04-29 1989-04-17 Verfahren und Anordnung zur Umsetzung von Umrissdaten in Rasterdaten.
JP1105691A JP2825268B2 (ja) 1988-04-29 1989-04-25 輪隔データをラスタデータに変換する方法及び装置
US07/863,524 US5386510A (en) 1988-04-29 1992-04-03 Method of and apparatus for converting outline data to raster data

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
NL8801116A NL8801116A (nl) 1988-04-29 1988-04-29 Werkwijze en inrichting voor het converteren van omtrekgegevens naar rastergegevens.
NL8801116 1988-04-29

Publications (1)

Publication Number Publication Date
NL8801116A true NL8801116A (nl) 1989-11-16

Family

ID=19852224

Family Applications (1)

Application Number Title Priority Date Filing Date
NL8801116A NL8801116A (nl) 1988-04-29 1988-04-29 Werkwijze en inrichting voor het converteren van omtrekgegevens naar rastergegevens.

Country Status (5)

Country Link
US (1) US5386510A (nl)
EP (1) EP0344827B1 (nl)
JP (1) JP2825268B2 (nl)
DE (1) DE68907383T2 (nl)
NL (1) NL8801116A (nl)

Families Citing this family (29)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5621800A (en) * 1994-11-01 1997-04-15 Motorola, Inc. Integrated circuit that performs multiple communication tasks
US5619633A (en) * 1994-12-14 1997-04-08 Apple Computer, Inc. Computer generated scribble fill of a vector graphic
US5739825A (en) * 1995-10-02 1998-04-14 Apple Computer, Inc. Computer generated hatch filling within a vector graphic
US6906823B1 (en) 2000-05-15 2005-06-14 International Business Machines Corporation Input interface for a raster object memory in a method, system and program
JP2002092366A (ja) * 2000-09-11 2002-03-29 Nec Corp Cpu時間売買方法及びcpu時間売買システムにおける管理サーバ
US7253919B2 (en) * 2000-11-30 2007-08-07 Ricoh Co., Ltd. Printer with embedded retrieval and publishing interface
US7747655B2 (en) 2001-11-19 2010-06-29 Ricoh Co. Ltd. Printable representations for time-based media
US7415670B2 (en) 2001-11-19 2008-08-19 Ricoh Co., Ltd. Printer with audio/video localization
US7424129B2 (en) * 2001-11-19 2008-09-09 Ricoh Company, Ltd Printing system with embedded audio/video content recognition and processing
US7861169B2 (en) * 2001-11-19 2010-12-28 Ricoh Co. Ltd. Multimedia print driver dialog interfaces
US20040181815A1 (en) * 2001-11-19 2004-09-16 Hull Jonathan J. Printer with radio or television program extraction and formating
US7314994B2 (en) * 2001-11-19 2008-01-01 Ricoh Company, Ltd. Music processing printer
US7275159B2 (en) * 2003-08-11 2007-09-25 Ricoh Company, Ltd. Multimedia output device having embedded encryption functionality
US7528976B2 (en) * 2003-09-25 2009-05-05 Ricoh Co., Ltd. Stand alone printer with hardware/software interfaces for sharing multimedia processing
US7570380B2 (en) * 2003-09-25 2009-08-04 Ricoh Company, Ltd. Printer user interface
JP2005108230A (ja) * 2003-09-25 2005-04-21 Ricoh Co Ltd オーディオ/ビデオコンテンツ認識・処理機能内蔵印刷システム
US7511846B2 (en) * 2003-09-25 2009-03-31 Ricoh Co., Ltd. Printer having embedded functionality for printing time-based media
US8077341B2 (en) * 2003-09-25 2011-12-13 Ricoh Co., Ltd. Printer with audio or video receiver, recorder, and real-time content-based processing logic
US7864352B2 (en) 2003-09-25 2011-01-04 Ricoh Co. Ltd. Printer with multimedia server
US7508535B2 (en) * 2003-09-25 2009-03-24 Ricoh Co., Ltd. Stand alone multimedia printer with user interface for allocating processing
US20050071763A1 (en) * 2003-09-25 2005-03-31 Hart Peter E. Stand alone multimedia printer capable of sharing media processing tasks
US7440126B2 (en) * 2003-09-25 2008-10-21 Ricoh Co., Ltd Printer with document-triggered processing
US7505163B2 (en) * 2003-09-25 2009-03-17 Ricoh Co., Ltd. User interface for networked printer
US20050068573A1 (en) * 2003-09-25 2005-03-31 Hart Peter E. Networked printing system having embedded functionality for printing time-based media
US7528977B2 (en) * 2003-09-25 2009-05-05 Ricoh Co., Ltd. Printer with hardware and software interfaces for peripheral devices
US7573593B2 (en) * 2003-09-25 2009-08-11 Ricoh Company, Ltd. Printer with hardware and software interfaces for media devices
US8274666B2 (en) * 2004-03-30 2012-09-25 Ricoh Co., Ltd. Projector/printer for displaying or printing of documents
US7603615B2 (en) 2004-03-30 2009-10-13 Ricoh Co., Ltd. Multimedia projector-printer
US7551312B1 (en) 2005-03-17 2009-06-23 Ricoh Co., Ltd. Annotable document printer

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2524177B1 (fr) * 1982-03-25 1987-10-30 Dassault Electronique Procede et dispositif pour fournir a partir de donnees memorisees une image dynamique d'une surface, telle que le sol, vue d'un point d'observation mobile
GB2130854B (en) * 1982-10-10 1986-12-10 Singer Co Display system
US4564901A (en) * 1983-07-21 1986-01-14 Burroughs Corporation Method of performing a sequence of related activities via multiple asynchronously intercoupled digital processors
US4706079A (en) * 1983-08-16 1987-11-10 International Business Machines Corporation Raster scan digital display system with digital comparator means
US4616220A (en) * 1983-08-22 1986-10-07 Burroughs Corporation Graphics display comparator for multiple bit plane graphics controller
GB2156554B (en) * 1984-03-10 1987-07-29 Rediffusion Simulation Ltd Processing system with shared data
US5113523A (en) * 1985-05-06 1992-05-12 Ncube Corporation High performance computer system
US4704697A (en) * 1985-06-17 1987-11-03 Counterpoint Computers Multiple station video memory
EP0245564B1 (en) * 1986-05-06 1992-03-11 Digital Equipment Corporation A multiport memory and source arrangement for pixel information

Also Published As

Publication number Publication date
EP0344827B1 (en) 1993-06-30
JPH01318174A (ja) 1989-12-22
JP2825268B2 (ja) 1998-11-18
EP0344827A1 (en) 1989-12-06
US5386510A (en) 1995-01-31
DE68907383D1 (de) 1993-08-05
DE68907383T2 (de) 1993-12-09

Similar Documents

Publication Publication Date Title
NL8801116A (nl) Werkwijze en inrichting voor het converteren van omtrekgegevens naar rastergegevens.
US6115131A (en) Embedded display list interpreter for multiprocessor-based printer
US4648119A (en) Method and apparatus for forming 3×3 pixel arrays and for performing programmable pattern contingent modifications of those arrays
JP3474078B2 (ja) 描画処理装置
NL8503461A (nl) Werkwijze voor het genereren van lijnstukken.
JPH0281184A (ja) 画像処理装置
US9542127B2 (en) Image processing method and image processing apparatus
US6069705A (en) Managing interpreter cofunctions on multiprocessor-based printer
US7053895B2 (en) Image processing apparatus, image processing method, control program and recording medium
US6091506A (en) Embedded display list interpreter with distribution of rendering tasks, for multiprocessor-based printer
NL8502640A (nl) Front-end systeem.
KR102405470B1 (ko) 적분영상 기반 영상분할을 위한 초고속 병렬 연산 방법 및 초고속 병렬 연산프로그램을 기록한 컴퓨터로 읽을 수 있는 매체
NL8502641A (nl) Raster-beeld-geheugen.
US6064403A (en) Apparatus for and method of performing image-drawing processing
CN114119661A (zh) 一种目标追踪处理器、目标追踪方法及装置
JPH0146914B2 (nl)
CN112200004A (zh) 图像检测模型的训练方法、装置及终端设备
JP6580944B2 (ja) 画像形成装置
Ranganathan VLSI & parallel computing for pattern recognition & artificial intelligence
CN117422608A (zh) 图像引导滤波方法及系统
BE1003276A3 (nl) Werkwijze en inrichting voor het genereren van een lithografisch raster.
BE1003657A3 (nl) Inrichting voor het vormen van een verzameling data bestemd voor een drukplaat.
Mirmehdi Product label inspection using transputers
Larkin Pipelining data transfers with OpenACC
Arabnia A scanline algorithm targeted at SIMD machine architectures

Legal Events

Date Code Title Description
A1B A search report has been drawn up
BV The patent application has lapsed