started timming plot for registers
All checks were successful
Build Typst PDFs (Docker) / build-typst (push) Successful in 15s
All checks were successful
Build Typst PDFs (Docker) / build-typst (push) Successful in 15s
This commit is contained in:
@@ -1,5 +1,6 @@
|
||||
#import "../lib/common_rewrite.typ" : *
|
||||
#import "@preview/mannot:0.3.1"
|
||||
#import "@preview/cetz:0.4.2"
|
||||
|
||||
#show math.integral: it => math.limits(math.integral)
|
||||
#show math.sum: it => math.limits(math.sum)
|
||||
@@ -189,13 +190,87 @@
|
||||
]
|
||||
|
||||
#bgBlock(fill: colorState)[
|
||||
#subHeading(fill: colorState)[Timing]
|
||||
#subHeading(fill: colorState)[Latches, Flipflops und Register]
|
||||
]
|
||||
|
||||
#bgBlock(fill: colorState)[
|
||||
#subHeading(fill: colorState)[Latches und Register]
|
||||
#subHeading(fill: colorState)[Timing]
|
||||
|
||||
*Register Bedinungen*
|
||||
|
||||
#cetz.canvas(length: 0.5mm, {
|
||||
import cetz.draw: *
|
||||
|
||||
|
||||
let cycle_time = 38
|
||||
let cycle_start = cycle_time*0.8
|
||||
let cycle_end = cycle_time*4
|
||||
let signal_hight = 10
|
||||
let switch_offset = cycle_time/13
|
||||
let signal_storke = (paint: rgb("#2e2e2e"), thickness: 0.3mm)
|
||||
|
||||
let t_c2q = 0.6
|
||||
let t_setup = 0.6
|
||||
let t_hold = 0.4
|
||||
|
||||
// clk1
|
||||
line((1*cycle_time + switch_offset/2, signal_hight + 1), (1*cycle_time + switch_offset/2, -40), stroke: (paint: rgb("#0004ff"), thickness: 0.4mm, dash: "densely-dashed"))
|
||||
|
||||
// q change
|
||||
line((cycle_time*(t_c2q + 1) + switch_offset/2, -15 + signal_hight + 1), (cycle_time*(t_c2q + 1) + switch_offset/2, -40), stroke: (paint: rgb("#0004ff"), thickness: 0.4mm, dash: "densely-dashed"))
|
||||
|
||||
// d change
|
||||
line((cycle_time*(t_setup + 2) + switch_offset/2, -30 + signal_hight + 1), (cycle_time*(t_setup + 2) + switch_offset/2, -40), stroke: (paint: rgb("#0004ff"), thickness: 0.4mm, dash: "densely-dashed"))
|
||||
|
||||
// clk
|
||||
line((cycle_time*3 + switch_offset/2, signal_hight + 1), (cycle_time*3 + switch_offset/2, -40), stroke: (paint: rgb("#0004ff"), thickness: 0.4mm, dash: "densely-dashed"))
|
||||
|
||||
// hold time
|
||||
line((cycle_time*(3+t_hold) + switch_offset/2, -30 + signal_hight + 1), (cycle_time*(3+t_hold) + switch_offset/2, -40), stroke: (paint: rgb("#0004ff"), thickness: 0.4mm, dash: "densely-dashed"))
|
||||
|
||||
|
||||
content(( cycle_start -7, 5), "clk")
|
||||
|
||||
line((cycle_start,0), (cycle_time,0), (cycle_time + switch_offset,signal_hight), (cycle_time*2, signal_hight), (cycle_time*2 + switch_offset, 0), (cycle_time*3, 0), (cycle_time*3 + switch_offset, 10), (cycle_end, signal_hight), stroke: signal_storke)
|
||||
|
||||
translate((0, -15))
|
||||
content((cycle_start -7, 5), "Q")
|
||||
|
||||
line(
|
||||
(cycle_start,0), (cycle_time*(t_c2q + 1), 0),
|
||||
(cycle_time*(t_c2q + 1) + switch_offset, signal_hight),
|
||||
(cycle_time*(t_c2q + 3),signal_hight), (cycle_time*(t_c2q + 3) + switch_offset, 0),
|
||||
(cycle_end + switch_offset, 0),
|
||||
stroke: signal_storke
|
||||
)
|
||||
line(
|
||||
(cycle_start,signal_hight), (cycle_time*(t_c2q + 1), signal_hight),
|
||||
(cycle_time*(t_c2q + 1) + switch_offset, 0),
|
||||
(cycle_time*(t_c2q + 3),0), (cycle_time*(t_c2q + 3) + switch_offset, signal_hight),
|
||||
(cycle_end + switch_offset, signal_hight),
|
||||
stroke: signal_storke
|
||||
)
|
||||
|
||||
translate((0, -15))
|
||||
content((cycle_start -7, 5), "D")
|
||||
|
||||
line(
|
||||
(cycle_start,0), (cycle_time*(t_setup + 2), 0),
|
||||
(cycle_time*(t_setup + 2) + switch_offset, signal_hight), (cycle_end + switch_offset, signal_hight), stroke: signal_storke
|
||||
|
||||
)
|
||||
line(
|
||||
(cycle_start,signal_hight), (cycle_time*(t_setup + 2), signal_hight),
|
||||
(cycle_time*(t_setup + 2) + switch_offset, 0), (cycle_end + switch_offset, 0), stroke: signal_storke
|
||||
)
|
||||
|
||||
|
||||
})
|
||||
|
||||
]
|
||||
|
||||
|
||||
|
||||
#bgBlock(fill: colorState)[
|
||||
#subHeading(fill: colorState)[Pipeline/Parallele Verarbeitungseinheiten]
|
||||
]
|
||||
|
||||
Reference in New Issue
Block a user