SlideShare a Scribd company logo
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clocks
 Virtual clocks could be defined for all input clocks and
output clocks in current design
 Virtual input clock for external launch clock in the constraint for the input
case
 Virtual output clock for external latch clock in the constraint for the output
case.
 This will separate the clock domains for the IO and core.
 This is required to set the correct clock uncertainty
numbers in the clock uncertainty constraints, which differ
for the core and the IO transfers
 Main benefit is it allows for separate and distinct clock
uncertainty constraints to be made for each unique clock
transfer.
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clock Examples
D Q
clk_in
data_in
D Q
data_out
PLL
clk_in
D Q
data_in
D Q
data_out
D Q
virt_clk_in
D Q
virt_clk_out
D Q
virt_clk_in
D Q
virt_clk_out
Case A
Case B
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clocks - Case A: No PLL Involved
 Traditionally, you'd set input delay and output delay with
clk_in as the reference clock
 This intra-clock transfer would appear the same as the IO clock transfer
 Incorrect clock uncertainty would be applied for IO transfers
 Virtual clocks for input transfer and output transfer
provide separate and distinct clock transfers from clk_in
core intra-clock transfer.
D Q
clk_in
data_in
D Q
data_out
D Q
virt_clk_in
D Q
virt_clk_out
Case A
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clocks - Case A: No PLL Involved
 Old Constraints:
create_clock -period 10 -name clk_in [get_ports {clk_in}]
set_input_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_in}]
set_input_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_in}]
set_output_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_out}]
set_output_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_out}]
 Clock Transfers
From clk_in to clk_in only
 Resultant Clock Uncertainty
From clk_in to clk_in Setup: 150ps Hold: 50ps
D Q
clk_in
data_in
D Q
data_out
D Q
virt_clk_in
D Q
virt_clk_out
Case A
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clocks - Case A: No PLL Involved
 New Constraints:
create_clock -period 10 -name clk_in [get_ports {clk_in}]
create_clock -period 10 -name virt_clk_in
create_clock -period 10 -name virt_clk_out
set_input_delay -clock [get_clocks {virt_clk_in}] -max 2 [get_ports {data_in}]
set_input_delay -clock [get_clocks {virt_clk_in}] -min 0 [get_ports {data_in}]
set_output_delay -clock [get_clocks {virt_clk_out}] -max 2 [get_ports {data_out}]
set_output_delay -clock [get_clocks {virt_clk_out}] -min 0 [get_ports {data_out}]
 Clock Transfers
From clk_in to clk_in
From virt_clk_in to clk_in
From clk_in to virt_clk_out
 Resultant Clock Uncertainty
From clk_in to clk_in Setup: 150ps Hold: 50ps
From virt_clk_in to clk_in Setup: 130ps Hold: 130ps
From clk_in to virt_clk_out Setup: 130ps Hold: 130ps
D Q
clk_in
data_in
D Q
data_out
D Q
virt_clk_in
D Q
virt_clk_out
Case A
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clocks - Case B: PLL Involved
 Traditionally, you'd set input delay and output delay with clk_in as the
reference clock
 Separate transfers would happen in this case
 Transfers: clk_in to PLL, PLL to PLL, PLL to clk_in
 Virtual clocks for input transfer and output transfer provide separate
and distinct clock transfers from clk_in to core, intra-clock transfer of
core PLL clock, and core PLL clock to output.
 The use of virtual clocks will separate a presumed inter-clock core
transfer from clk_in to PLL from an IO transfer to/from the PLL.
PLL
clk_in
D Q
data_in
D Q
data_out
D Q
virt_clk_in
D Q
virt_clk_out
Case B
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clocks - Case B: PLL Involved
 Old Constraints:
create_clock -period 10 -name clk_in [get_ports {clk_in}]
set_input_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_in}]
set_input_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_in}]
set_output_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_out}]
set_output_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_out}]
derive_pll_clocks
 Clock Transfers
From clk_in to pll_clk0
From pll_clk0 to pll_clk0
From pll_clk0 to clk_in
 Resultant Clock Uncertainty (based on example design PLL settings)
From clk_in to pll_clk0 Setup: 270ps Hold: 230ps
From pll_clk0 to pll_clk0 Setup: 100ps Hold: 50ps
From pll_clk0 to clk_in Setup: 230ps Hold: 270ps
PLL
clk_in
D Q
data_in
D Q
data_out
D Q
virt_clk_in
D Q
virt_clk_out
Case B
© 2010 Altera Corporation—Confidential
ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off.
and Altera marks in and outside the U.S.
Virtual Clocks - Case B: PLL Involved
 Old Constraints:
create_clock -period 10 -name clk_in [get_ports {clk_in}]
create_clock -period 10 -name virt_clk_in
create_clock -period 10 -name virt_clk_out
set_input_delay -clock [get_clocks {virt_in_refclk }] -max 1 [get_ports {data_in_a* data_in_b* }]
set_input_delay -clock [get_clocks {virt_in_refclk }] -min 0 [get_ports {data_in_a* data_in_b* }]
set_output_delay -clock [get_clocks {virt_out_refclk }] -max 1 [get_ports {data_out* }]
set_output_delay -clock [get_clocks {virt_out_refclk }] -min 0 [get_ports {data_out* }]
derive_pll_clocks
 Clock Transfers
From virt_clk_in to pll_clk0
From pll_clk0 to pll_clk0
From pll_clk0 to virt_clk_out
 Resultant Clock Uncertainty (based on example design PLL settings)
From virt_clk_in to pll_clk0 Setup: 150ps Hold: 100ps
From pll_clk0 to pll_clk0 Setup: 100ps Hold: 50ps
From pll_clk0 to virt_clk_out Setup: 100ps Hold: 150ps
PLL
clk_in
D Q
data_in
D Q
data_out
D Q
virt_clk_in
D Q
virt_clk_out
Case B

More Related Content

Similar to Virtual Clocks.ppt

5 Cool Things About SQL
5 Cool Things About SQL5 Cool Things About SQL
5 Cool Things About SQL
Connor McDonald
 
FUNTTEL_0304.pdf
FUNTTEL_0304.pdfFUNTTEL_0304.pdf
FUNTTEL_0304.pdf
CristianoSilva802439
 
Applied motion products b lu dc_datasheet
Applied motion products b lu dc_datasheetApplied motion products b lu dc_datasheet
Applied motion products b lu dc_datasheet
Electromate
 
Original IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ON
Original IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ONOriginal IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ON
Original IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ON
authelectroniccom
 
74 ls76
74 ls7674 ls76
74 ls76
74 ls7674 ls76
74 ls76
Guillermo Ce
 
OpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developersOpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developers
Connor McDonald
 
OpenWorld 2018 - Common Application Developer Disasters
OpenWorld 2018 - Common Application Developer DisastersOpenWorld 2018 - Common Application Developer Disasters
OpenWorld 2018 - Common Application Developer Disasters
Connor McDonald
 
Day 20.3 frame relay
Day 20.3 frame relay Day 20.3 frame relay
Day 20.3 frame relay
CYBERINTELLIGENTS
 
Day 20.1 configuringframerelay
Day 20.1 configuringframerelayDay 20.1 configuringframerelay
Day 20.1 configuringframerelay
CYBERINTELLIGENTS
 
857 motor protection relay
857 motor protection relay857 motor protection relay
857 motor protection relay
Angel Zambrano
 
Intelligent mcc Siemens
Intelligent mcc Siemens Intelligent mcc Siemens
Intelligent mcc Siemens
Praveen Patil
 
SC-SCA.ppt
SC-SCA.pptSC-SCA.ppt
SC-SCA.ppt
Aggeliki32
 
TDA7729 -STMicroelectronics- Electronics-chip.com
TDA7729 -STMicroelectronics- Electronics-chip.comTDA7729 -STMicroelectronics- Electronics-chip.com
TDA7729 -STMicroelectronics- Electronics-chip.com
Kenny Choi
 
INFLUXQL & TICKSCRIPT
INFLUXQL & TICKSCRIPTINFLUXQL & TICKSCRIPT
INFLUXQL & TICKSCRIPT
InfluxData
 
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docxmetadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
ARIV4
 
Intelligent mcc
Intelligent mccIntelligent mcc
Intelligent mcc
Praveen Patil
 
TC74ACT244FT PSpice Model (Free SPICE Model)
TC74ACT244FT PSpice Model (Free SPICE Model)TC74ACT244FT PSpice Model (Free SPICE Model)
TC74ACT244FT PSpice Model (Free SPICE Model)Tsuyoshi Horigome
 

Similar to Virtual Clocks.ppt (20)

5 Cool Things About SQL
5 Cool Things About SQL5 Cool Things About SQL
5 Cool Things About SQL
 
FUNTTEL_0304.pdf
FUNTTEL_0304.pdfFUNTTEL_0304.pdf
FUNTTEL_0304.pdf
 
Applied motion products b lu dc_datasheet
Applied motion products b lu dc_datasheetApplied motion products b lu dc_datasheet
Applied motion products b lu dc_datasheet
 
Original IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ON
Original IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ONOriginal IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ON
Original IGBT FGH30S130P FGH30S 30A 1300V TO-3PN New ON
 
74 ls76
74 ls7674 ls76
74 ls76
 
74 ls76
74 ls7674 ls76
74 ls76
 
OpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developersOpenWorld Sep14 12c for_developers
OpenWorld Sep14 12c for_developers
 
OpenWorld 2018 - Common Application Developer Disasters
OpenWorld 2018 - Common Application Developer DisastersOpenWorld 2018 - Common Application Developer Disasters
OpenWorld 2018 - Common Application Developer Disasters
 
Day 20.3 frame relay
Day 20.3 frame relay Day 20.3 frame relay
Day 20.3 frame relay
 
Day 20.1 configuringframerelay
Day 20.1 configuringframerelayDay 20.1 configuringframerelay
Day 20.1 configuringframerelay
 
FINAL PRESENTATION_PREETIKA
FINAL PRESENTATION_PREETIKAFINAL PRESENTATION_PREETIKA
FINAL PRESENTATION_PREETIKA
 
857 motor protection relay
857 motor protection relay857 motor protection relay
857 motor protection relay
 
Intelligent mcc Siemens
Intelligent mcc Siemens Intelligent mcc Siemens
Intelligent mcc Siemens
 
Disney Max 6000 Configurations
Disney Max 6000 ConfigurationsDisney Max 6000 Configurations
Disney Max 6000 Configurations
 
SC-SCA.ppt
SC-SCA.pptSC-SCA.ppt
SC-SCA.ppt
 
TDA7729 -STMicroelectronics- Electronics-chip.com
TDA7729 -STMicroelectronics- Electronics-chip.comTDA7729 -STMicroelectronics- Electronics-chip.com
TDA7729 -STMicroelectronics- Electronics-chip.com
 
INFLUXQL & TICKSCRIPT
INFLUXQL & TICKSCRIPTINFLUXQL & TICKSCRIPT
INFLUXQL & TICKSCRIPT
 
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docxmetadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
metadatacoreProperties.xmlModel2015-07-13T030104Zthua3267th.docx
 
Intelligent mcc
Intelligent mccIntelligent mcc
Intelligent mcc
 
TC74ACT244FT PSpice Model (Free SPICE Model)
TC74ACT244FT PSpice Model (Free SPICE Model)TC74ACT244FT PSpice Model (Free SPICE Model)
TC74ACT244FT PSpice Model (Free SPICE Model)
 

Recently uploaded

Storytelling For The Web: Integrate Storytelling in your Design Process
Storytelling For The Web: Integrate Storytelling in your Design ProcessStorytelling For The Web: Integrate Storytelling in your Design Process
Storytelling For The Web: Integrate Storytelling in your Design Process
Chiara Aliotta
 
一比一原版(毕业证)长崎大学毕业证成绩单如何办理
一比一原版(毕业证)长崎大学毕业证成绩单如何办理一比一原版(毕业证)长崎大学毕业证成绩单如何办理
一比一原版(毕业证)长崎大学毕业证成绩单如何办理
taqyed
 
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdfPORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
fabianavillanib
 
一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理
一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理
一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理
h7j5io0
 
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
7sd8fier
 
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
7sd8fier
 
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
smpc3nvg
 
Game Concept Presentation for Ukrainian Mythology Based Game With Designs
Game Concept Presentation for Ukrainian Mythology Based Game With DesignsGame Concept Presentation for Ukrainian Mythology Based Game With Designs
Game Concept Presentation for Ukrainian Mythology Based Game With Designs
184804
 
Transforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting ProfitabilityTransforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting Profitability
aaryangarg12
 
vernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdfvernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdf
PrabhjeetSingh219035
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLO
LORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLOLORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLO
LORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLO
lorraineandreiamcidl
 
Book Formatting: Quality Control Checks for Designers
Book Formatting: Quality Control Checks for DesignersBook Formatting: Quality Control Checks for Designers
Book Formatting: Quality Control Checks for Designers
Confidence Ago
 
Design Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinkingDesign Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinking
cy0krjxt
 
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
h7j5io0
 
Expert Accessory Dwelling Unit (ADU) Drafting Services
Expert Accessory Dwelling Unit (ADU) Drafting ServicesExpert Accessory Dwelling Unit (ADU) Drafting Services
Expert Accessory Dwelling Unit (ADU) Drafting Services
ResDraft
 
projectreportnew-170307082323 nnnnnn(1).pdf
projectreportnew-170307082323 nnnnnn(1).pdfprojectreportnew-170307082323 nnnnnn(1).pdf
projectreportnew-170307082323 nnnnnn(1).pdf
farazahmadas6
 
Top Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdfTop Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdf
PlanitIsrael
 
PDF SubmissionDigital Marketing Institute in Noida
PDF SubmissionDigital Marketing Institute in NoidaPDF SubmissionDigital Marketing Institute in Noida
PDF SubmissionDigital Marketing Institute in Noida
PoojaSaini954651
 
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
asuzyq
 
Connect Conference 2022: Passive House - Economic and Environmental Solution...
Connect Conference 2022: Passive House -  Economic and Environmental Solution...Connect Conference 2022: Passive House -  Economic and Environmental Solution...
Connect Conference 2022: Passive House - Economic and Environmental Solution...
TE Studio
 

Recently uploaded (20)

Storytelling For The Web: Integrate Storytelling in your Design Process
Storytelling For The Web: Integrate Storytelling in your Design ProcessStorytelling For The Web: Integrate Storytelling in your Design Process
Storytelling For The Web: Integrate Storytelling in your Design Process
 
一比一原版(毕业证)长崎大学毕业证成绩单如何办理
一比一原版(毕业证)长崎大学毕业证成绩单如何办理一比一原版(毕业证)长崎大学毕业证成绩单如何办理
一比一原版(毕业证)长崎大学毕业证成绩单如何办理
 
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdfPORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
PORTFOLIO FABIANA VILLANI ARCHITECTURE.pdf
 
一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理
一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理
一比一原版(UCB毕业证书)伯明翰大学学院毕业证成绩单如何办理
 
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
一比一原版(MMU毕业证书)曼彻斯特城市大学毕业证成绩单如何办理
 
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
一比一原版(NCL毕业证书)纽卡斯尔大学毕业证成绩单如何办理
 
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
一比一原版(Bristol毕业证书)布里斯托大学毕业证成绩单如何办理
 
Game Concept Presentation for Ukrainian Mythology Based Game With Designs
Game Concept Presentation for Ukrainian Mythology Based Game With DesignsGame Concept Presentation for Ukrainian Mythology Based Game With Designs
Game Concept Presentation for Ukrainian Mythology Based Game With Designs
 
Transforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting ProfitabilityTransforming Brand Perception and Boosting Profitability
Transforming Brand Perception and Boosting Profitability
 
vernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdfvernacular architecture in response to climate.pdf
vernacular architecture in response to climate.pdf
 
LORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLO
LORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLOLORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLO
LORRAINE ANDREI_LEQUIGAN_HOW TO USE TRELLO
 
Book Formatting: Quality Control Checks for Designers
Book Formatting: Quality Control Checks for DesignersBook Formatting: Quality Control Checks for Designers
Book Formatting: Quality Control Checks for Designers
 
Design Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinkingDesign Thinking Design thinking Design thinking
Design Thinking Design thinking Design thinking
 
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
一比一原版(BU毕业证书)伯恩茅斯大学毕业证成绩单如何办理
 
Expert Accessory Dwelling Unit (ADU) Drafting Services
Expert Accessory Dwelling Unit (ADU) Drafting ServicesExpert Accessory Dwelling Unit (ADU) Drafting Services
Expert Accessory Dwelling Unit (ADU) Drafting Services
 
projectreportnew-170307082323 nnnnnn(1).pdf
projectreportnew-170307082323 nnnnnn(1).pdfprojectreportnew-170307082323 nnnnnn(1).pdf
projectreportnew-170307082323 nnnnnn(1).pdf
 
Top Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdfTop Israeli Products and Brands - Plan it israel.pdf
Top Israeli Products and Brands - Plan it israel.pdf
 
PDF SubmissionDigital Marketing Institute in Noida
PDF SubmissionDigital Marketing Institute in NoidaPDF SubmissionDigital Marketing Institute in Noida
PDF SubmissionDigital Marketing Institute in Noida
 
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
一比一原版(Columbia毕业证)哥伦比亚大学毕业证如何办理
 
Connect Conference 2022: Passive House - Economic and Environmental Solution...
Connect Conference 2022: Passive House -  Economic and Environmental Solution...Connect Conference 2022: Passive House -  Economic and Environmental Solution...
Connect Conference 2022: Passive House - Economic and Environmental Solution...
 

Virtual Clocks.ppt

  • 1. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clocks  Virtual clocks could be defined for all input clocks and output clocks in current design  Virtual input clock for external launch clock in the constraint for the input case  Virtual output clock for external latch clock in the constraint for the output case.  This will separate the clock domains for the IO and core.  This is required to set the correct clock uncertainty numbers in the clock uncertainty constraints, which differ for the core and the IO transfers  Main benefit is it allows for separate and distinct clock uncertainty constraints to be made for each unique clock transfer.
  • 2. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clock Examples D Q clk_in data_in D Q data_out PLL clk_in D Q data_in D Q data_out D Q virt_clk_in D Q virt_clk_out D Q virt_clk_in D Q virt_clk_out Case A Case B
  • 3. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clocks - Case A: No PLL Involved  Traditionally, you'd set input delay and output delay with clk_in as the reference clock  This intra-clock transfer would appear the same as the IO clock transfer  Incorrect clock uncertainty would be applied for IO transfers  Virtual clocks for input transfer and output transfer provide separate and distinct clock transfers from clk_in core intra-clock transfer. D Q clk_in data_in D Q data_out D Q virt_clk_in D Q virt_clk_out Case A
  • 4. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clocks - Case A: No PLL Involved  Old Constraints: create_clock -period 10 -name clk_in [get_ports {clk_in}] set_input_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_in}] set_input_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_in}] set_output_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_out}] set_output_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_out}]  Clock Transfers From clk_in to clk_in only  Resultant Clock Uncertainty From clk_in to clk_in Setup: 150ps Hold: 50ps D Q clk_in data_in D Q data_out D Q virt_clk_in D Q virt_clk_out Case A
  • 5. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clocks - Case A: No PLL Involved  New Constraints: create_clock -period 10 -name clk_in [get_ports {clk_in}] create_clock -period 10 -name virt_clk_in create_clock -period 10 -name virt_clk_out set_input_delay -clock [get_clocks {virt_clk_in}] -max 2 [get_ports {data_in}] set_input_delay -clock [get_clocks {virt_clk_in}] -min 0 [get_ports {data_in}] set_output_delay -clock [get_clocks {virt_clk_out}] -max 2 [get_ports {data_out}] set_output_delay -clock [get_clocks {virt_clk_out}] -min 0 [get_ports {data_out}]  Clock Transfers From clk_in to clk_in From virt_clk_in to clk_in From clk_in to virt_clk_out  Resultant Clock Uncertainty From clk_in to clk_in Setup: 150ps Hold: 50ps From virt_clk_in to clk_in Setup: 130ps Hold: 130ps From clk_in to virt_clk_out Setup: 130ps Hold: 130ps D Q clk_in data_in D Q data_out D Q virt_clk_in D Q virt_clk_out Case A
  • 6. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clocks - Case B: PLL Involved  Traditionally, you'd set input delay and output delay with clk_in as the reference clock  Separate transfers would happen in this case  Transfers: clk_in to PLL, PLL to PLL, PLL to clk_in  Virtual clocks for input transfer and output transfer provide separate and distinct clock transfers from clk_in to core, intra-clock transfer of core PLL clock, and core PLL clock to output.  The use of virtual clocks will separate a presumed inter-clock core transfer from clk_in to PLL from an IO transfer to/from the PLL. PLL clk_in D Q data_in D Q data_out D Q virt_clk_in D Q virt_clk_out Case B
  • 7. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clocks - Case B: PLL Involved  Old Constraints: create_clock -period 10 -name clk_in [get_ports {clk_in}] set_input_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_in}] set_input_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_in}] set_output_delay -clock [get_clocks {clk_in}] -max 2 [get_ports {data_out}] set_output_delay -clock [get_clocks {clk_in}] -min 0 [get_ports {data_out}] derive_pll_clocks  Clock Transfers From clk_in to pll_clk0 From pll_clk0 to pll_clk0 From pll_clk0 to clk_in  Resultant Clock Uncertainty (based on example design PLL settings) From clk_in to pll_clk0 Setup: 270ps Hold: 230ps From pll_clk0 to pll_clk0 Setup: 100ps Hold: 50ps From pll_clk0 to clk_in Setup: 230ps Hold: 270ps PLL clk_in D Q data_in D Q data_out D Q virt_clk_in D Q virt_clk_out Case B
  • 8. © 2010 Altera Corporation—Confidential ALTERA, ARRIA, CYCLONE, HARDCOPY, MAX, MEGACORE, NIOS, QUARTUS & STRATIX are Reg. U.S. Pat. & Tm. Off. and Altera marks in and outside the U.S. Virtual Clocks - Case B: PLL Involved  Old Constraints: create_clock -period 10 -name clk_in [get_ports {clk_in}] create_clock -period 10 -name virt_clk_in create_clock -period 10 -name virt_clk_out set_input_delay -clock [get_clocks {virt_in_refclk }] -max 1 [get_ports {data_in_a* data_in_b* }] set_input_delay -clock [get_clocks {virt_in_refclk }] -min 0 [get_ports {data_in_a* data_in_b* }] set_output_delay -clock [get_clocks {virt_out_refclk }] -max 1 [get_ports {data_out* }] set_output_delay -clock [get_clocks {virt_out_refclk }] -min 0 [get_ports {data_out* }] derive_pll_clocks  Clock Transfers From virt_clk_in to pll_clk0 From pll_clk0 to pll_clk0 From pll_clk0 to virt_clk_out  Resultant Clock Uncertainty (based on example design PLL settings) From virt_clk_in to pll_clk0 Setup: 150ps Hold: 100ps From pll_clk0 to pll_clk0 Setup: 100ps Hold: 50ps From pll_clk0 to virt_clk_out Setup: 100ps Hold: 150ps PLL clk_in D Q data_in D Q data_out D Q virt_clk_in D Q virt_clk_out Case B