0% found this document useful (0 votes)
15 views

Prova Start Up 6

The document contains questions about software engineering, hardware engineering, and systems engineering. It includes questions about programming concepts like polymorphism, data structures, and scheduling algorithms. It also includes questions about electronics topics like impedance matching, PCB design, and oscilloscope usage. Finally, it contains questions relating to systems topics like requirements, testing methodology, and debugging techniques.

Uploaded by

theusspimentel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
15 views

Prova Start Up 6

The document contains questions about software engineering, hardware engineering, and systems engineering. It includes questions about programming concepts like polymorphism, data structures, and scheduling algorithms. It also includes questions about electronics topics like impedance matching, PCB design, and oscilloscope usage. Finally, it contains questions relating to systems topics like requirements, testing methodology, and debugging techniques.

Uploaded by

theusspimentel
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
You are on page 1/ 18

Name:

E-mail: Date:
Instructions:

• Provide short and direct answers to the questions.


• Answer the questions using your knowledge and creativity. Do not use your mobile
phone and do not chat with other participants while answering the test.
• We really want to get to know you and to understand how you think, so always
explain the reasoning behind your answers.
• Answer in English as much as possible, but answers in Portuguese are also
accepted.
• If you need more space for the answers please ask for additional answer sheets.

Test Selection:

• This test has 16 questions, which are grouped into three areas of knowledge:
Software, Hardware and Systems.
• You can answer the questions of one or more areas of knowledge. Just a
reminder: we don’t expect you to answer the whole test, but you are very welcome
to do so if you want!
• Please select below one or more tests you are answering:

[ ] Software Test – questions 1 to 10


[ ] Hardware Test – questions 11 to 13
[ ] Systems Test – questions 13 to 16

SOFTWARE ENGINEERING

• What is the scope of a static variable?

• The scope of a static variable is determined by where it is declared. For example, if a static
variable is declared inside a method, its scope is limited to that method.


• What is the Stack Pointer used for?

• The stack pointer is used to keep track of the stack in memory, allowing a program to access
it and retrieve/store data.

• When we specify a communication via RS-232, what are the necessary parameters?

• Consider a memory mapping with an 8-bit width and the following areas:

Area 1: size= 96 KBytes (KB), beginning at address 0xC0048000.


Area 2: beginning at 0x20100000 and finishing at 0x20FFFFFF.
Answer:

a) What is the final address of Area 1?


b) What is the size in bytes of Area 2?

• What is polymorphism? Give a code example.

• Polymorphism is a pattern in object-oriented programming (OOP), in which classes have


different functionalities while sharing a common interface. There are two types of
polymorphism, static and dynamic. Static polymorphism is achieved through method
overloading or operator overloading. Dynamic polymorphism is achieved through method
overriding, where a subclass provides a specific implementation of a method defined in its
superclass.


• What is a deadlock? Give an example of a code that may cause a deadlock.


• What is a scheduler and what is it used for? Give an example of a scheduling algorithm and
briefly describe it.

• Write a C function that receives as inputs a structure and an index. This function shall test
the index and sample the struct position defined by the index and return its value:

typedef struct {
char _F0;
char _F1;
char _F2;
char _F3;
char _F4;
char _F5;
char _F6;
char _F7;
char _F8;
char _F9;
char _F10;
char _F11;
} _T0_TOP_LEVEL_IO;

/* Version type composed of 12 chars. */


typedef _T0_TOP_LEVEL_IO Version;

• Given the following C function.

int foo()
{

int arr[3];
int i;

printf(“program started!”);

for (i = 0; i < 20; i++) {


arr[i] = 0;
}
printf(“program finished!”);

return i;
}

• Explain the behavior of the code above

• What is the function return value?

• Please suggest improvements above.

• What is the result of the execution of this program?

class Animal {
public:
Animal() { }
~Animal() { std::cout << “Animal”; }
};

class Monkey : public Animal {


public:
Monkey() { }
~Monkey() { std::cout << “Monkey”; }
};
int main()
{
Animal* x = new Animal();
Animal* y = new Monkey();

delete x;
delete y;

return 0;
}

HARDWARE ENGINEERING

• Regarding the development of electrical circuits and electronic products:


• Describe a personal experience in which you were able to troubleshoot an issue in a project.
Give as much details as you can. This issue may be related to a professional experience, an
academic or pesonal projects.
• Explain the concept of impedance matching in PCBs (Printed Circuit Boards). What kind of
impacts may occur if the impedances are not matched in a high-speed circuit?

• Describe the construction of a Printed Circuit Board, and explain how PCBs can be
manufactured.

• Suppose you need to measure a sine wave (f = 1MHz, V = 2Vpp), how would you configure the
oscilloscope to perform this measurement?

• Describe the functionality of the circuits below. Give as much details as you can (description,
equations, and applications).
• Regarding the development of programmable logic for electronic systems:


• What logic can be implemented in the “Logic Block” to generate the waveform below it?

• Tip: you can represent the logic as diagrams, circuits, hardware description
languages like VHDL or Verilog, etc.

• What is the difference between Mealy and Moore Finite State Machines (FSM)? List pros
and cons of each one.

• How would you modify the circuit below to avoid sampling the wrong value at the second
flip-flop if the propagation delay of the “Comb logic” is longer than the clock (CLK) period,
while still using the same clock? What kind of problems you may face if you don’t modify
the circuit?
• If you have a 100 MHz clock, how do you generate the following clocks: 33 MHz, 45
MHz, 67 MHz, with a duty cycle of 50%?

• Are FIFOs (First In First Out) the only way to cross different clocks domains?
• Regarding the verification of digital systems, especially for programmable logic devices:
• Explain or draw the basic structure of a verification environment.
• When block level simulation must be considered as a verification strategy and when top
level simulation is the best option?

• What is the purpose of a simulation regression? Downsides?

• Given the following RAM memory, what test scenarios would you create to verify if it is
working properly?
SYSTEMS ENGINEERING

• One of the items of an aircraft modernization program consists in replacing analog indicators
by digital ones as symbols in an electronic display. The fuel pressure indicator (#1 in Figure
1) is one of those gauges.

Figure 1 - Indicators and Gauges Positions in the AS350 Main Panel

The signal for this indicator is generated by the fuel pressure transducer. In the modernized
aircraft, the idea is to keep the sensors and connect them to an acquisition unit connected to the
display the fuel pressure. A survey is being prepared to evaluate these sensors and signals.

• How would you propose to characterize (in order to define how to measure with an
acquisition unit) this sensor, as it operates in the aircraft?

• Based on your previous proposition, write down a simplified test procedure.


• Considering Function means “what system does”, describe 3 WhatsApp functions.

• If you were the engineer responsible to develop new functionalities to WhatsApp, what
functions would you develop? Specify Functions, define performance and behavior of
each one and propose a Use Case for each one of them.

• Consider the new functions you defined before and write a requirement for each one.
Requirement must have an actor (system) + verb (shall) + what must be performed +
metrics (which can be tested). How would you test those requirements? Propose a
methodology of tests.

• Now consider that one of the tests failed (test did not reach expected performance). Why
did it failed? Describe a way to isolate faults and find the root cause of the problem.
• The WAD (Wide Area Display) is used as the main display in Gripen NG aircrafts. It is
responsible for displaying both tactical and flight critical data. Its architecture is presented on
Figure 2. During its integration, it was noticed that the video was not being displayed.
Figure 2: WAD Video Architecture

• Analyzing the architecture presented above, can you determine the cause of the failure?
Why?

• How would you debug the system? Which tools or external equipment would you use?
• Do you have any suggestions to improve WAD’s architecture?

You might also like