Welcome to Scribd, the world's digital library. Read, publish, and share books and documents. See more
Download
Standard view
Full view
of .
Save to My Library
Look up keyword
Like this
0Activity
0 of .
Results for:
No results containing your search query
P. 1
Black A

Black A

Ratings: (0)|Views: 1 |Likes:
Published by sujaata

More info:

Published by: sujaata on May 30, 2012
Copyright:Attribution Non-commercial

Availability:

Read on Scribd mobile: iPhone, iPad and Android.
download as PDF, TXT or read online from Scribd
See more
See less

05/30/2012

pdf

text

original

 
AnApplicationofVHDL-BasedHardware/SoftwareCodesign
DavidBlackTRWSpaceandElectronicsGroupAvionicsSystemsDivision,SanDiego,CA
92128
USAblack@rc.trw.comABSTRACT
ThispaperaddressestheapplicabilityanduseofprocessorsynthesistoolsandVHDLtosupportacodesignmethodology.Itsuggeststhefeaturesrequiredforaviabletooltosupporthighengineeringproductivityofdigitalprocessingsystems.
It
reportsontheirapplicationtocommunicationsandsignalanalysisdigitalhardwaredesignsandinvolvespulsedetectionandwaveformprocessingofhighrateorcomplexcommunicationsandradarsignals.Thisuse
is
appropriate
to
theConsumerElectronics,Telecommunications,andAerospaceindustriesandtheMilitarywhererequirementsforminimumsize,weight,andpowerprohibittheexclusiveuseofCommercialOff-The-Shelf(COTS)processorsolutions.Aparticularprocessorsynthesistool
is
usedasanexampleinthisdiscussion.
INTRODUCTIONShortertime-to-marketrequirements,leanerdevelopmentbudgets,andthecontinuingrapidadvanceoftechnologyallplacepressure
m
theengineeringdevelopmentenvironmenttoincreaseproductivityandtosupportcontinuingproductimprovementswithaminimumofredesign.Indicationsarethatminimumproductivityimprovementsofonehundredpercentareneeded.Rapidvirtualprototypingwithahardware/softwarecodesignprocesscontributestoincreasedproductivityforcomplexembeddeddigitalsystems.Forcustomembeddeddigitalprocessors,acapabilitytospecifyhighperformance,hardware-independentsystemfunctionalbehaviorscancontributegreatlytosystemperformanceanalysis,designverification,andproduct
reuse
whencoupledwithanefficienthardwaresynthesiscapability.Thekeytosolving
this
emergingdesignproductivityproblemisthe
use
ofcodesigntoolswithinaconcurrentengineeringenvironment.Highlevelprogramminglanguages
or
hardwaredescriptionlanguagesalonewillnotsolvethisproblem.Instead,thedesignermust
be
affordedtheabilitytoefficientlytradebetweenhardwareandsoftwareelementsinthedesignandtoevaluateandverifytheresultsthroughaccuratesimulation.
It
isalsodesirablethatbotharigoroushardwaredescriptionandtheembeddedsoftware/firmwarecodebeautomaticallyproduced.
In
thispaper,hardware/softwarecodesignisappliedtodigitalsignalprocessing.Theapplicationofcodesignisdefined,forpurposesof
this
paper,asthejointdesignofaprocessorarchitectureandabehavioralspecificationtobeexecuted
upm
thatarchitecture.Hardwareandsoftwareengineeringdisciplinesareassociated
in
atightlycoupled,concurrentdevelopmentenvironmentwitheachinfluencingtheother.Avarietyofadvancedcomputeraidedengineering(CAE)toolsarebeingdevelopedwhichsupport
this
codesignprocess.Variousmethodsarebeingresearchedtoaddressthisproblem.Forexample,workofthe"Hardware/SoftwareCodesignProject"oftheUniversityofQueensland,Australia;forexample,languagetranslators[1]andhardware/softwareprofiling
[2].
AnotheristheCOMETprogramforCosynthesisatBoardandMCMLevelsforDigitalSignalProcessorsattheUniversityofCincinnati;referenceadescriptionoftheCOMETenvironment[3]andadistributedhigh-levelsynthesissystem[4].MuchworkisusingthePtolemyframeworkforsimulation,
61
 
prototyping,andsoftwaresynthesisforheterogeneoussystems;forexample,references[5]and[6].ProcSyn
[7]
isanexampleofasynthesistoolforcreatingcustom,highspeedprogrammableprocessors.Thistoolusesadifferentapproachtohardware/softwarecodesignthanthatofthepriorreferencesandisfurtherexploredasanexampleofsuchcodesigninthisdiscussion.ProcSyngeneratesVHDLcodebased
upcn
anexecutablespecificationofthedesiredapplicationbehavior.Thisspecificationiswritteninahighlevellanguage(HLL)suchasAdaorC.
It
isanalyzedbythetoolandaprocessor
is
synthesizedtooptimizeexecutionoftheHLLprogram'sbehavior.SpecificdiscussionsintheuseoftheProcSyntoolarebased
upon
TRW'sworkundertheARPADICEprogram,contractMDA-972-92-C-0021.DICE
is
the(D)ARPAInitiativeinConcurrentEngineering.TheAdvancedResearchProjectsAgency,ARPA,isanagencyoftheU.S.Government.ProcSynisadigitalprocessorsynthesiscodesigntooldevelopedbyJRSResearchLaboratoriesInc.ofOrange,California.
PROCESSORSYNTHESISFEATURES
Thebenefitsofprocessorsynthesisinahardware/softwarecodesignenvironmentshouldincludeapplicationbehavioralrequirementsto
be
inputasahigh-levellanguageexecutablespecification,automaticgenerationofahardwarecontrolarchitecture,andveryhighutilizationofsiliconresourcesforthetargetedapplication.Whentheexecutablespecificationbecomestheprogramtoexecute
00
thesynthesizedprocessor,thenthesystemtestvectorscan
be
carriedtothesiliconlevelwhichenablesefficientverificationofrequirements.CompilerretargetingtechnologyisthecoreofthistypeofCAEtool.Tosupportmaintainabilityandfutureproductenhancementstoexistinghardware,processorsynthesistoolsshouldoutputacompilertargetedtothesynthesizedprocessor.
It
shouldgeneratemicrocodefromotherprogramscodedintheHLL,notmerelyfromtheoriginalexecutablespecification.Itiscriticalthattheapplicationprogramdoesnotdescribetheprocessorhardware,butratheritdescribesthedesiredapplicationbehavior.
An
interactivedevelopmentprocesswithre-designinteractionscyclingontheorderofhoursordays
is
neededtosupportrapidprototypingandincreasedproductivity.Asignificantfeatureinaprocessorsynthesistoolincludesusercustomizationofhardwareelementstoaddprocessingfunctionsatkeypointsoftheprocessordesign.Yet,involvementbytheuseratthemicrocodelevelshouldnot
be
required.Withoutpinpointinclusionofuserdefinedcomponentsautomaticallyintegratedintotheprocessorarchitecture,themaintainabilityandeaseofprogramminginanHLLwouldnotsatisfythemillionsorbillionsofoperationspersecondrequiredofsomeapplications.Afeatureimportantforpracticalsynthesisistheinclusionofoptionstoperformtradeoffsofhardware(silicon)toperformance.
In
ordertominimizecost,afacilityissuggestedfortheusertoconstrainthearchitecturebyreducingthenumberofprocessingresources;forexample,adders,shifters,multipliers,andregisterfiles.Anotheroptionisthattominimizemicrowordwidthandreducearchitecturalconnectivity.Anaccuratemappingtovarioussilicontechnologies
is
importanttosupportdesigntradeoffs.Backannotationoftechnologytimingdataisnecessarytosupportcompilersynthesisandthusperformanceanalysis.Hardware/softwareperformancereportsmustgivetheuserdearvisibilityintoprocessoroperationinordertoexposeperformancebottlenecks.Suchvisibilitycanleadtoalgorithmimprovementoftheexecutablespecification,pinpointhardwareoptimizations,andarchitecturalrulemodifications.Architecturalrulemodificationmayormaynot
be
acriticalfactorinprocessorsynthesis.Highresourceinterconnectivityoftenimprovesperformance,butatthecostofincreasedsilicon.Also,processorsequencerinterruptvectortablestopermitfast,non-context,eventbranchesmayormaynot
be
requiredforsomeapplicationstomeetperformancerequirements.Otherfeaturesthatareusefulinprocessorsynthesisincludeautomaticreductionoflightly
used
resources,anintegratedsoftwaredevelopmentenvironment,andpower,size,andreliabilityreports.
62
 
THEPROCSYNCODESIGNTOOL
ProcSynisaVLIW(VeryLongInstructionWord)processorsynthesistool.
It
utilizestheconceptofhard~are~dsoftwarecodesigntodevelopsol~tionst~unplementdigitalsystemsbaseduponasingle-chipembeddedcustomdigitalprocessor.SeetheReferencessectionofthisdocumentforaselectionofpapersrelevanttothedevelopmentofthistool.Theinputtothetoolisanexecutablespecificationoftheapplicationsystem.ThisspecificationisdescribedintheAdaprogramminglanguageandencompassestheapplication'sbehavioralrequirements.ThetoolgeneratesasingleprocessorimplementationtoefficientlyprocessthebehaviordescribedintheAdaspecification.ProcSynoutputsaVHDLdescriptionoftheprocessorcompatibleforgatelevelsynthesis.ProcSynalsogeneratesandoutputsmicrocodeoftheAdaspecificationwhichdirectlyexecutes
upm
theprocessorVHDLdescription.Alsooutput,isacodegeneratorforconvertingAdatoprocessormicrocodeandasimulatorforthecustomprocessor.~igns.utilizingaProcSynprocessortypicallyYielddifferentarchitecturesthantraditionaldesi~.AProcSynarchitectureisbased
upm
a~odifle~.cr~barswitchcapableofproducinghighutilizationandconcurrentutilizationofmanyresources.ControlandresourcemanagementishandledbyProcSyn.("Resources"inthiscontextarethetransformationandstorageelementswhichmakeupaProcSynprocessorje.g.,adders,shifters,multipliers,registerfiles.)Theuseronlywritescodenecessarytodescribethebehaviorofthesystemfunctions.Theuserdoesnotcompilethecodebyhandnorgenerallyattempttocontrolthespecificresourcesoftheprocessor.Otherwise,thiswould
be
muchtoocomplexandwouldpresentasignificantmaintainabilityproblem.ProcSynhasthecapabilityforusingcustom,built-in-functions(BIF)toenhanceoverallprocessorperformance.ABIFis
used
whenacombinationofbasicresourcesareinsufficienttoachieveperformancerequirements.TheuserdesignstheBIFwhichtypicallyrepresentsacriticalsegmentofthebehavioralcoding.Forinstance,theearlyProcSynreportsoftheDemonstrationsystemalgorithmsindicatedinsufficientperformance.However,analysisofthereportsindicatedspecificareasoftheAdacodewhereBIFcould
beused
toimproveperformance.AsegmentofthecodewasthenreplacedbyasinglecalltotheBIF.Withsomedesigniterations,performancewasmet.
DEMONSTRATION
ThepurposeoftheDICEDemonstrationistoshowwhetherornotthe
JRS
Researchcodesignprocessorsynthesistool,ProcSyn,canbe
used
togreatlyreducetheengineeringdevelopmentcoststoproducedigitalhardwaresystems.WeusedanexistingsignalprocessingsystemasthebaselinemetricwithwhichtocomparetheProcSynbaseddevelopmentprocesstothemoretraditionalprocess
used
toproducetheexistingsystem.Thedemo~trationchosenistaken
from
asystem
used
forhighperformancesignaldetectionandanalysis.
An
eight-modulesection
from
thesystemistheDICEDemonstrationbaseline.Toimplementtheselecteddemonstrationapplication,ProcSynrequiredadifferentarchitecturalapproachthanthatoftheoriginaldevelopment.TheDICEDemonstrationtaskdidnotuseanydevelopmentworkfromtheoriginaleffortotherthanAcceptanceTestvectorsandtestequipmentsoftwarerequiredtovalidatetheProcS~based~evelopmenteffort.ThesystemandSIgnalenvironmentrequirementsweretheinputtotheDICEdemonstrationeffort.Sco~ing.th~Problem.
An
initialsystemengmeermgJudgmentismadetoidentifythemostappropriatepartofthesystemtomodelforProcSynbaseddevelopment.
An
understandingofsysta:nrequirementsisprimarytoproducingalgorithmsnecessarytoimplementtheapplica~onusingProcSyn.SinceProcSynisasyn~es~erofadigitalprocessor,theapplicationneedsto
be
describedasaprogram.TheprogramiswritteninthehighlevellanguageofAda.Here,weapplyProcSyntoproblemsthatcannot
be
solvedwithaCOTSprocessor,butweuseprogramminginthesamewaywewould
if
usingaCOTSprocessor.~ileProcSynislimitedtoproducingasinglechipprocessordesign,itisbesttoscopetheproblemaslargeaspractical,withoutprejudice.Thecodesignofhardwareandsoftwareafforded
63

You're Reading a Free Preview

Download
/*********** DO NOT ALTER ANYTHING BELOW THIS LINE ! ************/ var s_code=s.t();if(s_code)document.write(s_code)//-->