Institut für Computertechnik ICT Institute of Computer Technology 09.09.2015 1 Interaction of...
-
Upload
aubrie-jenkins -
Category
Documents
-
view
212 -
download
0
Transcript of Institut für Computertechnik ICT Institute of Computer Technology 09.09.2015 1 Interaction of...
Institut fürComputertechnik
ICTInstitute ofComputer Technology
19.04.23 1
Interaction of SystemC AMS Extensions with TLM 2.0
Markus Damm, Christoph GrimmVienna University of Technology
Martin BarnasconiNXP Semiconductors
Institut für Computertechnik 19.04.23 2
Receiver
Antennafront-end
SerialInterface
Modulator/demod.
DSP
Oscillator ClockGenerator
Micro-controller
Hostprocessor
Memory
Power Manage-
ment
to all blocks
AudioDSP
ImagingDSP
ADC
Transmitter
DAC
RFdetector
Temp.sensor
High SpeedSerial
Interface
Calibration & Control
SystemC TLMSystemC AMS
Embedded AMS systems
Tight interaction between AMS and digital HW/SW sub-systems
Dedicated interfaces between analog and digital domain How should a TLMAMS interface be defined?
AMS-TLMinterface
Institut für Computertechnik
“TDF-Cluster“
19.04.23 3
SystemC AMS TDF
A
C D
Timed DataFlow – Synchronous Dataflow with timing annotation
Enables static scheduling – fast simulation of sampled analog signals at discrete time points
Sampling period associated to token production/consumption
B
50100
100
1
11
01001100
Sine-source
Bit-source
Modulation Environment
data rates
e.g. sampling period of 2 mshere…
…implies a samling period of 20 s here!
2 ms
20 s
2 ms
20 s20 s 20 s
Institut für Computertechnik 19.04.23 4
SystemC AMS – SystemC synchronization
SystemC AMS has its own execution semantics and simulation time synchronization needs!
SystemC AMS provides converter ports which allows TDF modules to connect to usual SystemC Discrete Event signals.
Accessing these ports triggers synchronization to SystemC kernel
Note: SystemC AMS is temporally decoupled, similar to the TLM 2.0 loosely timed coding style!
TDF-module2 ms
rate 3
3 ms
rate 2ms ms
tokenvalid at 4038363432302826 26 29 32 35 38 4142
Note that tTDF tDE always holds!
If the data rate is > 1, the data token even “warp ahead“ tTDF !
26 mstTDF
32 ms 38 ms 26 ms 32 ms 38 ms
20 mstDE
20 ms38 ms 38 mssynchronization
tTDF ↔ tDE
Institut für Computertechnik 19.04.23 5
Requirements for AMS-TLM interface Avoid “signal-level” interface (DETDF converter ports)
between AMS and TLM avoid unnecessary kernel context switching maintain concept of “loosely coupled independent
processes”:avoid strict timing synchronization between processes
Create direct interface between AMS Timed Data Flow and TLM 2.0 Loosely-timed coding style maintain temporal decoupling for both engines efficient packing an unpacking of “analog samples” (data)
in/from transactions Introduction of specialized converter modules /
channels can be instantiated and configured by the user part of design refinement methodology
Institut für Computertechnik 19.04.23 6
Basic idea of a generic TLMTDF converter
WRITE transaction data is streamed to TDF cluster directly
Incoming TDF “samples” are passed to READ transactions
The converter has to be part of the TDF-cluster Transactions mostly won’t come in regularly We use
buffers which are accessed via transactions The TDF cluster might run ahead too far in time
We need synchronization means!
TLMTDFconverter
TDF-CLUSTE
R
TLMInterconnect
output-buffer
input-bufferdummy
DE signalTDF
sub module
TDF
sub modul
e
DETDFconverter
port
…and: what means “too far” exactly?
Institut für Computertechnik 19.04.23 7
Implementation Our current conversion approach assumes loosely timed
initiators Blocking interface, no backward path used Initiators may use temporal decoupling
Issues: Transactions may arrive out of order (delays)
we need buffers which also keep timing information If a write-transaction has a delay annotation, the converter
doesn’t know if the buffer has enough space by that time we need a projected free buffer space concept
TLM and TDF might warp ahead too much of each other we need to trigger synchronization
Institut für Computertechnik 19.04.23 8
TLMTDF converter implementation
TLM TDFconverter
TDF-CLUSTE
R
TLMInterconnect
TDF
sub module
output-buffer
The output buffer keeps the timestamp of the transaction the respective data was sent with (similar to payload event queue). If the TDF sub-module fires, it uses only data with a
timestamp the current SystemC AMS time If an incoming transaction has a delay > 0, a projected free
buffer space is computed the transaction is returned with an error if the (projected)
free buffer space is too small for the data Synchronization: buffer underrun
WRITE-transactions
Institut für Computertechnik 19.04.23 9
TDFTLM converter implementation
TDF TLMconverter
TDF-CLUSTE
R
TLMInterconnect
TDF
sub module
input-buffer
If the TDF submodule fires, the incoming data token are copied into the input buffer (usual FIFO). We store only the timestamp of the oldest buffer token Transactions are annotated with an delay according to the
timestamp of the youngest token returned If buffer holds not enough data for the read request, an
error is returned Synchronization: buffer overflow
READ-transactions
Institut für Computertechnik 19.04.23 10
Conclusion / future work Connecting TLM2 and SystemC AMS models makes
sense regarding the design of mixed signals SoCs Efficient communication between AMS and digital HW/SW
part Sophisticated synchronization
TLM2 temporal decoupling processes can work well together with SystemC AMS statically scheduled TDF processes.
The presented work is a technical feasibility analysis, more groundwork has to be done. Study Approximately-timed initiators and converter
channels Apply methods to Real-life demonstrator
Institut für Computertechnik 19.04.23 11
Thank you for your
attention!Your: questions comments ideas objections