Open In App

Synopsys Interview Questions for Technical Profiles

Last Updated : 23 Jan, 2024
Improve
Improve
Like Article
Like
Save
Share
Report

Synopsys Inc., an American company, is the leading company by sales in the Electronic Design Automation industry. Synopsys’ first and best-known product is Design Compiler, a logic-synthesis tool. Synopsys offers a wide range of other products used in the design of an application-specific integrated circuit. The simulators include development and debugging environments which assist in the design of the logic for chips and computer systems. In 2016, Synopsys was placed at position #80 in Forbes’ list of America’s Best Employers. Also, placed at position #827 in 2016 and at position #909 in 2015 on Fortune 500 list.

synopsys-interview-questions-copy

To secure a rewarding position at Synopsys, candidates need to navigate and succeed in multiple interview rounds. Here, we’ve compiled some of the frequently asked interview questions to assist you in your preparation.

Q1. Difference Between Call by Value and Call by Reference

Call By Value

Call By Reference

While calling a function, we pass the values of variables to it. Such functions are known as “Call By Values”. While calling a function, instead of passing the values of variables, we pass the address of variables(location of variables) to the function known as “Call By References.
In this method, the value of each variable in the calling function is copied into corresponding dummy variables of the called function. In this method, the address of actual variables in the calling function is copied into the dummy variables of the called function.
With this method, the changes made to the dummy variables in the called function have no effect on the values of actual variables in the calling function. With this method, using addresses we would have access to the actual variables and hence we would be able to manipulate them.
In call-by-values, we cannot alter the values of actual variables through function calls. In call by reference, we can alter the values of variables through function calls.

Q2. Bubble Sort 
In the Bubble Sort algorithm, 

  • traverse from left and compare adjacent elements and the higher one is placed at right side. 
  • In this way, the largest element is moved to the rightmost end at first. 
  • This process is then continued to find the second largest and place it and so on until the data is sorted.

Q3. What is a Pointer in C?
A pointer is defined as a derived data type that can store the address of other C variables or a memory location. We can access and manipulate the data stored in that memory location using pointers.

Q4. What is a Polymorphims?
The word “polymorphism” means having many forms. In simple words, we can define polymorphism as the ability of a message to be displayed in more than one form.

Q5. What is OSI Model 7 Layers Explained?
The OSI model, created in 1984 by ISO, is a reference framework that explains the process of transmitting data between computers. It is divided into seven layers that work together to carry out specialised network functions, allowing for a more systematic approach to networking.

Q6. What is VPN? How It Works
VPN stands for the Virtual Private Network. A virtual private network (VPN) is a technology that creates a safe and encrypted connection over a less secure network, such as the Internet. A Virtual Private Network is a way to extend a private network using a public network such as the Internet. The name only suggests that it is a Virtual “private network,i.e., a” i.e. user can be part of a local network sitting at a remote location. It makes use of tunneling protocols to establish a secure connection.

Q7. What is the difference between Bluetooth and wifi?

Bluetooth Wifi
Bluetooth has no full form. While Wifi stands for Wireless Fidelity.
It requires a Bluetooth adapter on all devices for connectivity. Whereas it requires a wireless adapter Bluetooth for all devices and a wireless router for connectivity.
Bluetooth consumes low power. while it consumes high power.
The security of BlueTooth is less in comparison to the number of wifi. While it provides better security than BlueTooth.
Bluetooth is less flexible means these limited users are supported. Whereas wifi supports a large number of users.
The radio signal range of BlueTooth is ten meters. Whereas in wifi this range is a hundred meters.

Q8. What is Recursion? 
The process in which a function calls itself directly or indirectly is called recursion and the corresponding function is called a recursive function. Using a recursive algorithm, certain problems can be solved quite easily. Examples of such problems are Towers of Hanoi (TOH), Inorder/Preorder/Postorder Tree Traversals, DFS of Graph.

Q9. Difference Between Encoder and Decoder

ENCODER

DECODER

Encoder circuit basically converts the applied information signal into a coded digital bit stream.

Decoder performs reverse operation and recovers the original information signal from the coded bits.

In case of encoder, the applied signal is the active signal input.

Decoder accepts coded binary data as its input.

The number of inputs accepted by an encoder is 2n.

The number of input accepted by decoder is only n inputs.

The output lines for an encoder is n.

The output lines of an decoder is 2n.

The encoder generates coded data bits as its output.

The decoder generates an active output signal in response to the coded data bits.

Q10. Length of the longest substring without repeating characters

Length of the longest substring without repeating characters using Binary Search on Answer:

The idea is to check if a substring of a certain size “mid” is valid (A size mid is valid if there exists atleast one substring of size mid which contains all unique characters ), then all the size less than “mid” will also be valid. Similarly, if a substring of size “mid” is not valid(A size mid is not valid if there does not exists any substring of size mid which contains all unique characters ), then all the size larger than “mid” will also not be valid. This allows us to apply binary search effectively.

Q11. Reverse a Linked List

The idea is to use three pointers curr, prev, and next to keep track of nodes to update reverse links.

Q12. Reverse a stack using Recursion

The idea of the solution is to hold all values in Function Call Stack until the stack becomes empty. When the stack becomes empty, insert all held items one by one at the bottom of the stack.

Q13. What are the types of Logic gates?

A logic gate is a simple switching circuit that determines whether an input pulse can pass through to the output in digital circuits.

Basic Gates:

  • AND gate.
  • OR gate.
  • NOT gate.

Universal Gates:

  • NAND gate
  • NOR gate

Other Gates:

  • XOR gate
  • XNOR gate

Q14. Explain the Duality Theorem.

Dual expression is equal to a negative logic of the given boolean relation. For this, we have to, 

  1. Change each OR sign by and AND sign and vice-versa. 
  2. Complement any 0 or 1 appearing in the expression. 
  3. Keep the literal same. 

Example: 

Dual of A(B+C) = A+(B.C) = (A+B)(A+C)

Q14. Sort an array of 0s, 1s and 2s

This approach is based on the following idea:

  • The problem is similar to “Segregate 0s and 1s in an array”.
  • The problem was posed with three colors, here `0′, `1′ and `2′. The array is divided into four sections: 
    • arr[1] to arr[low – 1]
    • arr[low] to arr[mid – 1]
    • arr[mid] to arr[high – 1]
    • arr[high] to arr[n]
  • If the ith element is 0 then swap the element to the low range.
  • Similarly, if the element is 1 then keep it as it is.
  • If the element is 2 then swap it with an element in high range.

Q15. Largest Sum Contiguous Subarray (Kadane’s Algorithm)
The idea of Kadane’s algorithm is to maintain a variable max_ending_here that stores the maximum sum contiguous subarray ending at current index and a variable max_so_far stores the maximum sum of contiguous subarray found so far, Everytime there is a positive-sum value in max_ending_here compare it with max_so_far and update max_so_far if it is greater than max_so_far.

Q16. Detect and Remove Loop in a Linked List

  1. This method is also dependent on Floyd’s Cycle detection algorithm.
  2. Detect Loop using Floyd’s Cycle detection algorithm and get the pointer to a loop node.
  3. Count the number of nodes in the loop. Let the count be k.
  4. Fix one pointer to the head and another to a kth node from the head.
  5. Move both pointers at the same pace, they will meet at the loop starting node.
  6. Get a pointer to the last node of the loop and make the next of it NULL.

Q17. Convert a Binary Tree into its Mirror Tree (Invert Binary Tree)

The idea is to traverse recursively and swap the right and left subtrees after traversing the subtrees.

Follow the steps below to solve the problem:

  • Call Mirror for left-subtree i.e., Mirror(left-subtree)
  • Call Mirror for right-subtree i.e., Mirror(right-subtree)
  • Swap left and right subtrees.
    • temp = left-subtree
    • left-subtree = right-subtree
    • right-subtree = temp

Q18. QuickSort – Data Structure and Algorithm Tutorials
QuickSort is a sorting algorithm based on the Divide and Conquer algorithm that picks an element as a pivot and partitions the given array around the picked pivot by placing the pivot in its correct position in the sorted array.

Q19.Merge two sorted linked lists

Merge two sorted linked lists using Dummy Nodes:

The idea is to use a temporary dummy node as the start of the result list. The pointer Tail always points to the last node in the result list, so appending new nodes is easy.

Q20. Convert Infix expression to Postfix expression
To convert infix expression to postfix expression, use the stack data structure. Scan the infix expression from left to right. Whenever we get an operand, add it to the postfix expression and if we get an operator or parenthesis add it to the stack by maintaining their precedence.

Q21.What are the Properties of Boolean Algebra?
Switching algebra is also known as Boolean Algebra. It is used to analyze digital gates and circuits It is logical to perform a mathematical operation on binary numbers i.e., on ‘0’ and ‘1’. Boolean Algebra contains basic operators like AND, OR, and NOT, etc. Operations are represented by ‘.’ for AND , ‘+’ for OR. Operations can be performed on variables that are represented using capital letters eg ‘A’, ‘B’ etc.

Q22. What are the Characteristics of Digital ICs?
Digital circuits are constructed by using different logic gates, so when we use different ICs, we have to produce different logic gates using different technologies. For the fabrication of ICs, we use semiconductor devices-bipolar and unipolar. Based on the devices, digital ICs are made which are then commercially available.

Q23.Difference between Half adder and full adder

Parameters Half Adder Full Adder
Description Half Adder is a combinational logic circuit that adds two 1-bit digits. The half adder produces a sum of the two inputs.  A full adder is a combinational logic circuit that performs an addition operation on three one-bit binary numbers. The full adder produces a sum of the three inputs and carry value.
Previous carry The previous carry is not used.  The previous carry is used.
Inputs In Half adder, there are two input bits ( A, B).   In full adder, there are three input bits (A, B, C-in). 
Outputs The generated output is of two bits-Sum and Carry from the input of 2 bits.  The generated output is of two bits-Sum and Carry from the input of 3 bits.
Used as A half adder circuit cannot be used in the same way as a full adder circuit.   A full adder circuit can be used in place of a half adder circuit.

Q24.Difference between Process and Thread

Process Thread
Process means any program is in execution. Thread means a segment of a process.
The process takes more time to terminate. The thread takes less time to terminate.
It takes more time for creation. It takes less time for creation.
It also takes more time for context switching. It takes less time for context switching.
The process is less efficient in terms of communication. Thread is more efficient in terms of communication.

Q25.Difference between combinational and sequential circuit

Combinational circuits Sequential Circuit
In this output depends only upon present input. In this output depends upon present as well as past input
Speed is fast. Speed is slow
It is designed easy It is designed tough as compared to combinational circuits
There is no feedback between input and output There exists a feedback path between input and output
This is time independent. This is time dependent.

Q26. What is IP Spoofing?
IP Spoofing is essentially a technique used by hackers to gain unauthorized access to Computers. Concepts of IP Spoofing were initially discussed in academic circles as early as 1980. IP Spoofing types of attacks had been known to Security experts on the theoretical level. It was primarily theoretical until Robert Morris discovered a security weakness in the TCP protocol known as sequence prediction. Occasionally IP spoofing is done to mask the origins of a Dos attack. In fact, Dos attacks often mask the actual IP addresses from where the attack has originated from.

Q27. Maximum Index
Run two loops. In the outer loop, pick elements one by one from the left. In the inner loop, compare the picked element with the elements starting from the right side. Stop the inner loop when you see an element greater than the picked element and keep updating the maximum j-i so far.

Q28.Detect Cycle in a Directed Graph

To find cycle in a directed graph we can use the Depth First Traversal (DFS) technique. It is based on the idea that there is a cycle in a graph only if there is a back edge [i.e., a node points to one of its ancestors] present in the graph.

To detect a back edge, we need to keep track of the nodes visited till now and the nodes that are in the current recursion stack [i.e., the current path that we are visiting]. If during recursion, we reach a node that is already in the recursion stack, there is a cycle present in the graph.

Q29. peak element
The array can be traversed and the element whose neighbors are less than that element can be returned.

Q30. Reverse Level Order Traversal
(Recursive function to print a given level) 
We can easily modify method 1 of the normal level order traversal. In method 1, we have a method printGivenLevel() which prints a given level number. The only thing we need to change is, that instead of calling printGivenLevel() from the first level to the last level, we call it from the last level to the first level. 

Q31. Number of Coins
This problem is a variation of the problem discussed Coin Change Problem. Here instead of finding the total number of possible solutions, we need to find the solution with the minimum number of coins.

The minimum number of coins for a value V can be computed using the below recursive formula. 

  • If V == 0:
    • 0 coins required
  • If V > 0:
    • minCoins(coins[0..m-1], V ) = min { 1 + minCoins(V-coin[i])} where, 0 <=i <= m-1 and coins[i] <= V.

Q32. Next Greater Element
The Next greater Element for an element x is the first greater element on the right side of x in the array. For elements for which no greater element exists, consider the next greater element as -1.

Q33. Difference between Programmable Logic Array and Programming Array Logic

PLA

PAL

PLA stands for Programmable Logic Array. While PAL stands for Programmable Array Logic.
PLA speed is lower than PAL. While PAL’s speed is higher than PLA.
The complexity of PLA is high. While PAL’s complexity is less.
 PLA has a limited amount of functions implemented.  While PAL has a huge number of functions implemented.
The cost of PLA is also high. While the cost of PAL is low.

Q34. Explain Operational Amplifier.

An amplifier increases the strength of the input signal. It can be a Current amplifier, whose input is some current and output is amplified current. Voltage amplifiers, whose input is some voltage and output is amplified voltage.

blockdiagOpampimg

Q35. Define a digital system.
A digital system is a system that uses discrete (digital) signals to represent data.



Like Article
Suggest improvement
Share your thoughts in the comments

Similar Reads