Skip to main content

Silicon Engineering Intern at Microsoft India

  Hello Dear Readers, Currently, at Microsoft India  vacancy for Silicon Engineering Intern role. At Microsoft, Interns work on real-world projects in collaboration with teams across the world, while having fun along the way. You’ll be empowered to build community, explore your passions and achieve your goals. This is your chance to bring your solutions and ideas to life while working on cutting-edge technology. Microsoft’s mission is to empower every person and every organization on the planet to achieve more. As employees we come together with a growth mindset, innovate to empower others, and collaborate to realize our shared goals. Each day we build on our values of respect, integrity, and accountability to create a culture of inclusion where everyone can thrive at work and beyond. Qualifications: Currently pursuing a bachelor’s degree in Electronics Engineering, Electrical & Electronics/Computer Science Engineering.   Preferred Qualifications (PQs):   Experience or classes in t

Low Power Design: Common Power Format

Hello Dear Readers, 

Today in this post, I will provide some deep insight into Low Power Design: Common Power Format syntax and how to implement it.

  • CPF (Common Power Format)
    • CPF is power intent as similar as UPF which we have seen earlier. 
    • CPF structure is like UPF, only difference is UPF is handled by Synopsys VC static/dynamic tool, whereas CPF is handled only by Cadence’s CLP tool.
  • Below is Low Power flow for CPF: 

CPF Implementation Flow

  • Commands of CPF and UPF are much more similar only difference is in few syntax, will try to write CPF for below design block:

  • Commands of CPF and UPF are much more similar only difference is in few syntax, let’s have glance of CPF commands below:

#Definition of top domain

set_design top

#Define the top power domain

create_power_domain –name pdTOP –default

#Define pdA

     create_power_domain -name pdA \

                                          -instances {uA uC} \

                                          -shoutoff_condition {!uPCM/pso[0]}

#Define PSO- pdB when pso is low

     create_power_domain  -name pdB \

                                           -instances {uB } \

                                           -shoutoff_condition {!uPCM/pso[1]}


  • Design with multiple power domain and have power shutoff condition along with isolation cell definition. All outputs of pdB isolated high on rising edge of uPCM/iso  

     set highpin { uB/en1 uB/en2 }

     create_isolation_rule -name ir1 \

                                        -from pdB \

                                       -isolation_condition {uPCM/iso} 

                                        -isolation_output high \

                                        -pins “$highpin”




  • Design with multiple power domain, let’s have look at Level sifters:

#Level shifter definition:

 create_level_shifter_rule –name lsr1 -to {pdB} -from {pdA}

 create_level_shifter_rule –name lsr2 -to {pdA} -from {pdB}

 create_level_shifter_rule –name lsr3 -to {pdtop} -from {pdB}

 create_level_shifter_rule –name lsr4 -to {pdA} -from {pdtop}





  • Retention strategy definition in CPF:

 #retention strategy rule:

 #Defined state retention strategy: state stored on falling edge of restore[0] and restored           rising edge.

 #Note: if –save is not specified, it is logical NOT of the –restore signal       vice-versa 

 

 set srpgList {uB/reg1 uB/reg2}

 create_state_retention_rule -name sr1\

                                              -restore_edge {uPCM/restore[1]}     

  • Power modes definition in CPF: 

#Top is always high, pdA/pdB can be medium or low.

create_nominal_condition –name high –voltage 1.2

create_nominal_condition –name medium –voltage 1.0

create_nominal_condition –name low –voltage 0.8

create_nominal_condition –name off –voltage 0

#Define the modes:

 create_power_mode  -name PM1 \

                                   -domain_condition {pdTOP@high pdA@medium pdB@medium}

 create_power_mode -name PM2 \

                                   -domain_condition {pdTOP@high pdA@low pdB@low}

 create_power_mode -name PM3 \

                                  -domain_condition {pdTOP@high pdA@low pdB@off}

  end_design


  • Power shut off sequence:

  • Power up sequence:

Comments

  1. How to implement CPL file in synthesis stage

    ReplyDelete

Post a Comment

Popular posts from this blog

SDC (Synopsys Design Constraints) contents part 4

Today, we will be discussing the remaining constraints mentioned in the SDC, which pertain to timing exceptions and design rules. This is the final part of the SDC contents. This is going to be interesting, especially with multicycle paths. Take time to read and try to comprehend. 10. set_max_transition     By setting max transition value, our design checks that all ports and pins are meeting the specified limits mentioned in SDC. If these are not satisfied then timing report will give DRVs (design rule violations) in terms of slack. This is specified as               set_max_transition 0.5  UBUF1/A setting maximum limit of 500ps on pin A of Buffer1. 11. set_max_capacitance     This is same as max transition, setting the maximum capacitance value. if our design not meeting this value then violation will occur. This will also reports under design rule violations in terms of slack.     set_max_capacitance 0.7 [all_nets] setting maximum capacitance of 700fF on all nets. similarly, set_max

Apprenticeship CAI at MediaTek Bangalore

Hello Dear Readers,   Currently at MediaTek Bangalore vacancy for an Apprenticeship CAI role. Job Description: B.Tech degree in Electrical/Electronics Engineering with a strong educational background in Digital circuit design Experience in physical design of high performance design with frequencies > 2 Ghz. Experienced in hierarchical design, budgeting, multiple voltage domains and multiple clock domains. Strong skills with Cadence Encounter. Solid understanding of STA and timing constraints. Experienced in working on advanced process nodes (16nm). Strong expertise in Physical Verification to debug LVS/DRC issues at the block level. Requirement: B.Tech degree in Electrical/Electronics Engineering with strong educational background in Digital circuit design Experience in physical design of high performance design with frequencies > 2 Ghz. Experienced in hierarchical design, budgeting, multiple voltage domains and multiple clock domains. Strong skills with Cadence Encounter. Solid

IC Physical Design (PnR) at Ulkasemi

Hello Dear Readers,   Ulkasemi  has a vacancy for an IC Physical Design (PnR) role. Job Overview: As a full-time Trainee Engineer, the individual will be working on IC Physical Design implementation from RTL to GDSII to create design databases ready for manufacturing with a special focus on power, performance & area optimization with next-generation state-of-the-art process technologies. Job Responsibilities: Perform physical design implementation which includes Floor planning, Power Planning, Clock Tree Synthesis, Place and Route, ECO, Logic Equivalence checks Timing analysis, physical & electrical verification, driving the sign-off closure meeting schedule, and design goals Develop flow, methodologies, and automation scripts for various implementation steps Follow the instructions, compile documents, prepare deliverables, and report to the team lead Should remain up to date with the latest technology trends Educational Qualification:   B.Sc/M.Sc   in EEE or equivalent degree