Broadcom
30+ Micro Labs Interview Questions and Answers
Q1. Purpose of occ controllers. What scan enable signals( pipelined or nonpiplelined) will go to my occ controller, clock chain and why. Lock up latch purpose. If I have 5 negative edge triggered flops and 5 positi...
read moreExplanation of purpose of occ controllers, scan enable signals, lock up latch and arrangement of negative and positive edge triggered flops.
The purpose of occ controllers is to manage the clock signals in a design and ensure proper timing.
Scan enable signals are used for testing and debugging purposes.
Pipelined signals are used for faster data transfer while non-pipelined signals are used for simpler designs.
Lock up latch is used to prevent race conditions between negative an...read more
Q2. what are processes and threads memory is allocated to what process or threads? what is mutex and semaphore how many threads/process can you launch at a time what is meaning of core in 4-core system what is cont...
read moreProcesses and threads are units of execution in a computer system. Memory is allocated to processes. Mutex and semaphore are synchronization mechanisms. Core refers to a processing unit in a multi-core system. Context switching is the process of switching between different processes or threads.
Processes are independent units of execution with their own memory space and resources.
Threads are lightweight units of execution within a process, sharing the same memory space.
Memory ...read more
Q3. How compression ratio can be tweaked, what are the factors ( how coverage, Patten count gets impacted).
Compression ratio can be tweaked by adjusting the volume of the combustion chamber. This affects fuel efficiency and power output.
Compression ratio is the ratio of the volume of the combustion chamber at its largest to its smallest.
Increasing compression ratio can improve fuel efficiency and power output, but too high a ratio can cause engine knocking.
Factors that impact compression ratio include the size and shape of the combustion chamber, the size of the piston, and the st...read more
Q4. Runtime polymorphism and how it works vptr and vtable
Runtime polymorphism in C++ is achieved through virtual functions, vptr (virtual pointer), and vtable (virtual table).
Runtime polymorphism allows objects of different classes to be treated as objects of a common superclass.
Virtual functions are declared in a base class and overridden in derived classes to achieve polymorphism.
vptr is a pointer that points to the vtable of an object, allowing dynamic binding of virtual functions at runtime.
vtable is a table of function pointer...read more
Q5. How have I observed hold violations and setup violations in my design. What I did after that, etc
I have observed hold and setup violations in my design and took necessary actions.
I used static timing analysis (STA) to identify hold and setup violations.
I fixed hold violations by adding delay cells or increasing clock period.
I fixed setup violations by reducing delay or decreasing clock period.
I also checked for false paths and multi-cycle paths.
I re-ran STA after fixing violations to ensure timing closure.
I documented the changes made and communicated with the team.
I als...read more
Q6. How can we reset a tap controller without trst signals. How do you find coverage gaps.
Resetting a tap controller without trst signals and finding coverage gaps.
For resetting a tap controller without trst signals, we can use a power-on reset circuit or a watchdog timer.
To find coverage gaps, we can use code coverage analysis tools like CodeSonar, Coverity, or LDRA.
We can also use dynamic analysis tools like Valgrind or Purify to find runtime errors and coverage gaps.
Manual testing and peer code reviews can also help in identifying coverage gaps.
It is important ...read more
Q7. what is dynamic_cast where it can fail and what will happen in that case
dynamic_cast is a C++ operator used for safe downcasting of pointers and references in polymorphic classes.
dynamic_cast is used to safely downcast a pointer or reference from a base class to a derived class.
It can fail if the object being casted is not of the target type, in which case it returns a null pointer for pointers or throws a std::bad_cast exception for references.
Dynamic_cast can only be used with pointers or references to polymorphic classes (classes that have at ...read more
Q8. have you used any windows api's?
Yes, I have used Windows API's extensively in my previous projects.
I have used Windows API's for tasks such as creating windows, handling messages, and interacting with system resources.
Examples include using functions like CreateWindow, SendMessage, and ReadFile.
I have also worked with specific Windows API's like Winsock for networking and WinINet for internet-related tasks.
Q9. Which version of c++ you use
I primarily use C++17, but I am familiar with earlier versions as well.
I am comfortable working with features introduced in C++17 such as structured bindings and constexpr if
I have experience with earlier versions like C++11 and C++14
I stay updated with the latest features and improvements in C++ standards
Q10. what is union in c++
Union in C++ is a data structure that allows storing different data types in the same memory location.
Unions are similar to structures but all members share the same memory location.
Only one member of a union can be accessed at a time.
Unions are useful when you need to store different data types in the same memory space.
Example: union MyUnion { int i; float f; };
Example: MyUnion u; u.i = 10; // Accessing integer member of the union
Q11. what is weak pointer
Weak pointer is a type of smart pointer in C++ that does not control the lifetime of the object it points to.
Weak pointers are used to break circular references in shared pointers.
They do not increase the reference count of the object.
They are used in scenarios where the object may be deleted while there are still weak pointers pointing to it.
Q12. What is the frequency range of audio signal
Q13. Which is the best sorting algorithm
There is no one-size-fits-all answer as the best sorting algorithm depends on the specific use case and constraints.
The best sorting algorithm depends on factors such as the size of the data set, the range of values, whether the data is mostly already sorted or not, and the available memory.
For small data sets or nearly sorted data, insertion sort or bubble sort may be efficient.
For large data sets, quicksort, mergesort, or heapsort are often preferred.
For data with a limited...read more
Q14. What is SDLC and expalin its steps
SDLC stands for Software Development Life Cycle, which is a process used by software development teams to design, develop, and test high-quality software.
1. Planning: Define the scope, requirements, and objectives of the project.
2. Analysis: Gather and analyze user requirements.
3. Design: Create a detailed design plan for the software.
4. Implementation: Develop the software based on the design plan.
5. Testing: Test the software to ensure it meets the requirements.
6. Deploymen...read more
Q15. Which is the best modulation technique
Q16. Which type of transformer rating
Transformer rating depends on the type of transformer, such as power rating, voltage rating, and current rating.
Transformer rating includes power rating, voltage rating, and current rating
Power rating is the maximum power that the transformer can handle
Voltage rating is the maximum voltage that the transformer can handle
Current rating is the maximum current that the transformer can handle
Q17. What are Transport layer protocols
Q18. Calcutaing frequency of a given circuit
Q19. Plan for higher education?
Planning to pursue a master's degree in engineering.
Researching universities with strong engineering programs
Preparing for standardized tests like GRE
Networking with alumni and professionals in the field
Applying for scholarships and financial aid
Considering online or part-time programs for flexibility
Q20. Why transmission is required?
Q21. regression testing and real time example
Regression testing is retesting of software to ensure new changes do not negatively impact existing functionality.
Regression testing is performed to verify that recent code changes have not adversely affected existing features.
It involves running previously executed test cases to ensure that no new bugs have been introduced.
Example: After adding a new feature to a website, regression testing is done to make sure all existing functionalities still work correctly.
Example: After...read more
Q22. What is modulation?
Q23. How to calculate bandwidth
Q24. Examples of application layer
Q25. Design Stock Notification System
Design a system to notify users about stock availability and changes.
Create a database to store stock information and user preferences.
Implement a notification system to alert users when stock levels change.
Allow users to set preferences for specific products or thresholds.
Consider using push notifications, emails, or SMS for notifications.
Include a user interface for managing preferences and viewing stock information.
Q26. Why we do modulation
Q27. Level of water between buildings
Determining the level of water between buildings based on various factors
Consider the elevation of each building
Take into account the distance between the buildings
Factor in any natural or man-made barriers that may affect water flow
Q28. count freq of elements in array
Count frequency of elements in array of strings
Iterate through the array and use a hashmap to store the frequency of each element
Use a for loop to go through each element and update the count in the hashmap
Return the hashmap with element frequencies
Q29. Different types of modulations
Q30. Design Snake & Ladder Game
Design a Snake & Ladder game using arrays and logic.
Create a 10x10 grid representing the game board.
Assign positions for snakes and ladders on the board.
Use arrays to store the positions of players and their movements.
Implement logic for dice roll and player movement.
Include win condition when a player reaches the final position.
Q31. Explain BGP path selection process
BGP path selection process determines the best path for routing traffic between autonomous systems.
BGP prefers the path with the highest weight attribute.
If weights are the same, BGP looks at the local preference attribute.
Next, BGP considers the AS path length.
BGP then looks at the origin code, preferring IGP over EGP and Incomplete.
If all else is equal, BGP chooses the path with the lowest router ID.
Q32. redirction in java
Redirection in Java is the process of forwarding a request from one URL to another URL.
Redirection is achieved using the HttpServletResponse.sendRedirect() method.
It is commonly used for handling authentication and authorization.
Redirection can be permanent or temporary, depending on the HTTP status code used.
Examples of HTTP status codes used for redirection are 301, 302, and 307.
Q33. First steps in a sales process
More about working at Broadcom
Interview Process at Micro Labs
Top Interview Questions from Similar Companies
Reviews
Interviews
Salaries
Users/Month