700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 嵌入式开发—C语言面试题

嵌入式开发—C语言面试题

时间:2019-05-06 14:36:54

相关推荐

嵌入式开发—C语言面试题

1. 用预处理指令#define 声明一个常数,用以表明1年中有多少秒(忽略闰年问题)

#define SECONDS_PER_YEAR (60 * 60 * 24 * 365)UL

我在这想看到几件事情:

1). #define 语法的基本知识(例如:不能以分号结束,括号的使用,等等)

2). 懂得预处理器将为你计算常数表达式的值,因此,直接写出你是如何计算一年中有多少秒而不是计算出实际的值,是更清晰而没有代价的。

3). 意识到这个表达式将使一个16位机的整型数溢出-因此要用到长整型符号L,告诉编译器这个常数是的长整型数。

4). 如果你在你的表达式中用到UL(表示无符号长整型),那么你有了一个好的起点。记住,第一印象很重要。

2. 写一个“标准”宏MIN,这个宏输入两个参数并返回较小的一个。

#define MIN(A,B) ((A) <= (B) (A) : ))

这个测试是为下面的目的而设的:

1). 标识#define在宏中应用的基本知识。这是很重要的,因为直到嵌入(inline)操作符变为标准C的一部分,宏是方便产生嵌入代码的唯一方法,对于嵌入式系统来说,为了能达到要求的性能,嵌入代码经常是必须的方法。

2). 三重条件操作符的知识。这个操作符存在C语言中的原因是它使得编译器能产生比if-then-else更优化的代码,了解这个用法是很重要的。

3). 懂得在宏中小心地把参数用括号括起来

4). 我也用这个问题开始讨论宏的副作用,例如:当你写下面的代码时会发生什么事?

least = MIN(*p++, b);

3. 预处理器标识#error的目的是什么?

如果你不知道答案,请看参考文献1。这问题对区分一个正常的伙计和一个书呆子是很有用的。只有书呆子才会读C语言课本的附录去找出象这种

问题的答案。当然如果你不是在找一个书呆子,那么应试者最好希望自己不要知道答案。

死循环(Infinite loops)

4. 嵌入式系统中经常要用到无限循环,你怎么样用C编写死循环呢?

这个问题用几个解决方案。我首选的方案是:

while(1) { }

一些程序员更喜欢如下方案:

for(;;) { }

这个实现方式让我为难,因为这个语法没有确切表达到底怎么回事。如果一个应试者给出这个作为方案,我将用这个作为一个机会去探究他们这样做的

基本原理。如果他们的基本答案是:“我被教着这样做,但从没有想到过为什么。”这会给我留下一个坏印象。

第三个方案是用 goto

Loop:

...

goto Loop;

应试者如给出上面的方案,这说明或者他是一个汇编语言程序员(这也许是好事)或者他是一个想进入新领域的BASIC/FORTRAN程序员。

数据声明(Data declarations)

5. 用变量a给出下面的定义

a) 一个整型数(An integer)

b) 一个指向整型数的指针(A pointer to an integer)

c) 一个指向指针的的指针,它指向的指针是指向一个整型数(A pointer to a pointer to an integer)

d) 一个有10个整型数的数组(An array of 10 integers)

e) 一个有10个指针的数组,该指针是指向一个整型数的(An array of 10 pointers to integers)

f) 一个指向有10个整型数数组的指针(A pointer to an array of 10 integers)

g) 一个指向函数的指针,该函数有一个整型参数并返回一个整型数(A pointer to a function that takes an integer as an argument and returns an integer)

h) 一个有10个指针的数组,该指针指向一个函数,该函数有一个整型参数并返回一个整型数( An array of ten pointers to functions that take an integer argument and return an integer )

答案是:

a) int a; // An integer

b) int *a; // A pointer to an integer

c) int **a; // A pointer to a pointer to an integer

d) int a[10]; // An array of 10 integers

e) int *a[10]; // An array of 10 pointers to integers

f) int (*a)[10]; // A pointer to an array of 10 integers

g) int (*a)(int); // A pointer to a function a that takes an integer argument and returns an integer

h) int (*a[10])(int); // An array of 10 pointers to functions that take an integer argument and return an integer

人们经常声称这里有几个问题是那种要翻一下书才能回答的问题,我同意这种说法。当我写这篇文章时,为了确定语法的正确性,我的确查了一下书。

但是当我被面试的时候,我期望被问到这个问题(或者相近的问题)。因为在被面试的这段时间里,我确定我知道这个问题的答案。应试者如果不知道

所有的答案(或至少大部分答案),那么也就没有为这次面试做准备,如果该面试者没有为这次面试做准备,那么他又能为什么出准备呢?

Static

6. 关键字static的作用是什么?

这个简单的问题很少有人能回答完全。在C语言中,关键字static有三个明显的作用:

1). 在函数体,一个被声明为静态的变量在这一函数被调用过程中维持其值不变。

2). 在模块内(但在函数体外),一个被声明为静态的变量可以被模块内所用函数访问,但不能被模块外其它函数访问。它是一个本地的全局变量。

3). 在模块内,一个被声明为静态的函数只可被这一模块内的其它函数调用。那就是,这个函数被限制在声明它的模块的本地范围内使用。

大多数应试者能正确回答第一部分,一部分能正确回答第二部分,同是很少的人能懂得第三部分。这是一个应试者的严重的缺点,因为他显然不懂得本地化数据和代码范围的好处和重要性。

Const

7.关键字const是什么含意?

我只要一听到被面试者说:“const意味着常数”,我就知道我正在和一个业余者打交道。去年Dan Saks已经在他的文章里完全概括了const的所有用法,因此ESP(译者:Embedded Systems Programming)的每一位读者应该非常熟悉const能做什么和不能做什么.

如果你从没有读到那篇文章,只要能说出const意味着“只读”就可以了。尽管这个答案不是完全的答案,但我接受它作为一个正确的答案。(如果你想知道更详细的答案,仔细读一下Saks的文章吧。)如果应试者能正确回答这个问题,我将问他一个附加的问题:下面的声明都是什么意思?

const int a;

int const a;

const int *a;

int * const a;

int const * a const;

前两个的作用是一样,a是一个常整型数。第三个意味着a是一个指向常整型数的指针(也就是,整型数是不可修改的,但指针可以)。第四个意思a是一个指向整型数的常指针(也就是说,指针指向的整型数是可以修改的,但指针是不可修改的)。最后一个意味着a是一个指向常整型数的常指针(也就是说,指针指向的整型数是不可修改的,同时指针也是不可修改的)。如果应试者能正确回答这些问题,那么他就给我留下了一个好印象。顺带提一句,也许你可能会问,即使不用关键字 const,也还是能很容易写出功能正确的程序,那么我为什么还要如此看重关键字const呢?我也如下的几下理由:

1). 关键字const的作用是为给读你代码的人传达非常有用的信息,实际上,声明一个参数为常量是为了告诉了用户这个参数的应用目的。如果你曾花很多时间清理其它人留下的垃圾,你就会很快学会感谢这点多余的信息。(当然,懂得用const的程序员很少会留下的垃圾让别人来清理的。)

2). 通过给优化器一些附加的信息,使用关键字const也许能产生更紧凑的代码。

3). 合理地使用关键字const可以使编译器很自然地保护那些不希望被改变的参数,防止其被无意的代码修改。简而言之,这样可以减少bug的出现。

Volatile

8. 关键字volatile有什么含意 并给出三个不同的例子。

一个定义为volatile的变量是说这变量可能会被意想不到地改变,这样,编译器就不会去假设这个变量的值了。精确地说就是,优化器在用到这个变量时必须每次都小心地重新读取这个变量的值,而不是使用保存在寄存器里的备份。下面是volatile变量的几个例子:

1). 并行设备的硬件寄存器(如:状态寄存器)

2). 一个中断服务子程序中会访问到的非自动变量(Non-automatic variables)

3). 多线程应用中被几个任务共享的变量

回答不出这个问题的人是不会被雇佣的。我认为这是区分C程序员和嵌入式系统程序员的最基本的问题。嵌入式系统程序员经常同硬件、中断、RTOS等等打交道,所用这些都要求volatile变量。不懂得volatile内容将会带来灾难。

假设被面试者正确地回答了这是问题(嗯,怀疑这否会是这样),我将稍微深究一下,看一下这家伙是不是直正懂得volatile完全的重要性。

1). 一个参数既可以是const还可以是volatile吗?解释为什么。

2). 一个指针可以是volatile 吗?解释为什么。

3). 下面的函数有什么错误:

int square(volatile int *ptr)

{ return *ptr * *ptr;

} 下面是答案:

1). 是的。一个例子是只读的状态寄存器。它是volatile因为它可能被意想不到地改变。它是const因为程序不应该试图去修改它。

2). 是的。尽管这并不很常见。一个例子是当一个中服务子程序修该一个指向一个buffer的指针时。

3). 这段代码的有个恶作剧。这段代码的目的是用来返指针*ptr指向值的平方,但是,由于*ptr指向一个volatile型参数,编译器将产生类似下面的代码:

int square(volatile int *ptr)

{ int a,b;

a = *ptr;

b = *ptr;

return a * b;

} 由于*ptr的值可能被意想不到地该变,因此a和b可能是不同的。结果,这段代码可能返不是你所期望的平方值!正确的代码如下:

long square(volatile int *ptr)

{ int a;

a = *ptr;

return a * a;

}

位操作(Bit manipulation)

9. 嵌入式系统总是要用户对变量或寄存器进行位操作。给定一个整型变量a,写两段代码,第一个设置a的bit 3,第二个清除a 的bit 3。在以上两个操作中,要保持其它位不变。

对这个问题有三种基本的反应

1). 不知道如何下手。该被面者从没做过任何嵌入式系统的工作。

2). 用bit fields。Bit fields是被扔到C语言死角的东西,它保证你的代码在不同编译器之间是不可移植的,同时也保证了的你的代码是不可重用的。我最近不幸看到 Infineon为其较复杂的通信芯片写的驱动程序,它用到了bit fields因此完全对我无用,因为我的编译器用其它的方式来实现bit fields的。从道德讲:永远不要让一个非嵌入式的家伙粘实际硬件的边。

3). 用 #defines 和 bit masks 操作。这是一个有极高可移植性的方法,是应该被用到的方法。最佳的解决方案如下:

#define BIT3 (0x1<<3)

static int a;

void set_bit3(void)

{ a |= BIT3;

} void clear_bit3(void)

{ a &= ~BIT3;

} 一些人喜欢为设置和清除值而定义一个掩码同时定义一些说明常数,这也是可以接受的。我希望看到几个要点:说明常数、|=和&=~操作。

10. 嵌入式系统经常具有要求程序员去访问某特定的内存位置的特点。在某工程中,要求设置一绝对地址为0x67a9的整型变量的值为0xaa66。编译器是一个纯粹的ANSI编译器。写代码去完成这一任务。

这一问题测试你是否知道为了访问一绝对地址把一个整型数强制转换(typecast)为一指针是合法的。这一问题的实现方式随着个人风格不同而不同。典型的类似代码如下:

int *ptr;

ptr = (int *)0x67a9;

*ptr = 0xaa55;

一个较晦涩的方法是:

*(int * const)(0x67a9) = 0xaa55;

即使你的品味更接近第二种方案,但我建议你在面试时使用第一种方案。

中断(Interrupts)

11. 中断是嵌入式系统中重要的组成部分,这导致了很多编译开发商提供一种扩展—让标准C支持中断。具代表事实是,产生了一个新的关键字 __interrupt。下面的代码就使用了__interrupt关键字去定义了一个中断服务子程序(ISR),请评论一下这段代码的。

__interrupt double compute_area (double radius)

{ double area = PI * radius * radius;

printf(" Area = %f", area);

return area;

}

这个函数有太多的错误了,以至让人不知从何说起了:

1). ISR 不能返回一个值。如果你不懂这个,那么你不会被雇用的。

2). ISR 不能传递参数。如果你没有看到这一点,你被雇用的机会等同第一项。

3). 在许多的处理器/编译器中,浮点一般都是不可重入的。有些处理器/编译器需要让额处的寄存器入栈,有些处理器/编译器就是不允许在ISR中做浮点运算。此外,ISR应该是短而有效率的,在ISR中做浮点运算是不明智的。

4). 与第三点一脉相承,printf()经常有重入和性能上的问题。如果你丢掉了第三和第四点,我不会太为难你的。不用说,如果你能得到后两点,那么你的被雇用前景越来越光明了。

代码例子(Code examples)

12 . 下面的代码输出是什么,为什么?

void foo(void)

{ unsigned int a = 6;

int b = -20;

(a+b > 6) puts("> 6") : puts("<= 6");

}

这个问题测试你是否懂得C语言中的整数自动转换原则,我发现有些开发者懂得极少这些东西。不管如何,这无符号整型问题的答案是输出是“>6”。原因是当表达式中存在有符号类型和无符号类型时所有的操作数都自动转换为无符号类型。因此-20变成了一个非常大的正整数,所以该表达式计算出的结果大于6。这一点对于应当频繁用到无符号数据类型的嵌入式系统来说是丰常重要的。如果你答错了这个问题,你也就到了得不到这份工作的边缘。

13. 评价下面的代码片断:

unsigned int zero = 0;

unsigned int compzero = 0xFFFF;

/*1's complement of zero */

对于一个int型不是16位的处理器为说,上面的代码是不正确的。应编写如下:

unsigned int compzero = ~0;

这一问题真正能揭露出应试者是否懂得处理器字长的重要性。在我的经验里,好的嵌入式程序员非常准确地明白硬件的细节和它的局限,然而PC机程序往往把硬件作为一个无法避免的烦恼。

到了这个阶段,应试者或者完全垂头丧气了或者信心满满志在必得。如果显然应试者不是很好,那么这个测试就在这里结束了。但如果显然应试者做得不错,那么我就扔出下面的追加问题,这些问题是比较难的,我想仅仅非常优秀的应试者能做得不错。提出这些问题,我希望更多看到应试者应付问题的方法,而不是答案。不管如何,你就当是这个娱乐吧…

动态内存分配(Dynamic memory allocation)

14. 尽管不像非嵌入式计算机那么常见,嵌入式系统还是有从堆(heap)中动态分配内存的过程的。那么嵌入式系统中,动态分配内存可能发生的问题是什么?

这里,我期望应试者能提到内存碎片,碎片收集的问题,变量的持行时间等等。这个主题已经在ESP杂志中被广泛地讨论过了(主要是 P.J. Plauger, 他的解释远远超过我这里能提到的任何解释),所有回过头看一下这些杂志吧!让应试者进入一种虚假的安全感觉后,我拿出这么一个小节目:下面的代码片段的输出是什么,为什么?

char *ptr;

if ((ptr = (char *)malloc(0)) == NULL)

puts("Got a null pointer");

else

puts("Got a valid pointer");

这是一个有趣的问题。最近在我的一个同事不经意把0值传给了函数malloc,得到了一个合法的指针之后,我才想到这个问题。这就是上面的代码,该代码的输出是“Got a valid pointer”。我用这个来开始讨论这样的一问题,看看被面试者是否想到库例程这样做是正确。得到正确的答案固然重要,但解决问题的方法和你做决定的基本原理更重要些。

Typedef

15. Typedef 在C语言中频繁用以声明一个已经存在的数据类型的同义字。也可以用预处理器做类似的事。例如,思考一下下面的例子:

#define dPS struct s *

typedef struct s * tPS;

以上两种情况的意图都是要定义dPS 和 tPS 作为一个指向结构s指针。哪种方法更好呢?(如果有的话)为什么?

这是一个非常微妙的问题,任何人答对这个问题(正当的原因)是应当被恭喜的。答案是:typedef更好。思考下面的例子:

dPS p1,p2;

tPS p3,p4;

第一个扩展为

struct s * p1, p2;

上面的代码定义p1为一个指向结构的指,p2为一个实际的结构,这也许不是你想要的。第二个例子正确地定义了p3 和p4 两个指针。

晦涩的语法

16. C语言同意一些令人震惊的结构,下面的结构是合法的吗,如果是它做些什么?

int a = 5, b = 7, c;

c = a+++b;

这个问题将做为这个测验的一个愉快的结尾。不管你相不相信,上面的例子是完全合乎语法的。问题是编译器如何处理它?水平不高的编译作者实际上会争论这个问题,根据最处理原则,编译器应当能处理尽可能所有合法的用法。因此,上面的代码被处理成:

c = a++ + b;

因此, 这段代码持行后a = 6, b = 7, c = 12。

如果你知道答案,或猜出正确答案,做得好。如果你不知道答案,我也不把这个当作问题。我发现这个问题的最大好处是:这是一个关于代码编写风格,代码的可读性,代码的可修改性的好的话题

What will print out?

main()

{ char *p1=“name”;

char *p2;

p2=(char*)malloc(20);

memset (p2, 0, 20);

while(*p2++ = *p1++);

printf(“%sn”,p2);

}

Answer:empty string.

What will be printed as the result of the operation below:

main()

{ int x="20",y=35;

x=y++ + x++;

y= ++y + ++x;

printf(“%d%dn”,x,y);

}

Answer : 5794

What will be printed as the result of the operation below:

main()

{ int x="5";

printf(“%d,%d,%dn”,x,x< <2,x>>2);

}

Answer: 5,20,1

What will be printed as the result of the operation below:

#define swap(a,b) a="a"+b;b=a-b;a=a-b;

void main()

{ int x="5", y="10";

swap (x,y);

printf(“%d %dn”,x,y);

swap2(x,y);

printf(“%d %dn”,x,y);

}

int swap2(int a, int b)

{ int temp;

temp=a;

b=a;

a=temp;

return 0;

}

Answer: 10, 5

10, 5

What will be printed as the result of the operation below:

main()

{ char *ptr = ” Cisco Systems”;

*ptr++; printf(“%sn”,ptr);

ptr++;

printf(“%sn”,ptr);

}

Answer:Cisco Systems

isco systems

What will be printed as the result of the operation below:

main()

{ char s1[]=“Cisco”;

char s2[]= “systems”;

printf(“%s”,s1);

} Answer: Cisco

What will be printed as the result of the operation below:

main()

{ char *p1;

char *p2;

p1=(char *)malloc(25);

p2=(char *)malloc(25);

strcpy(p1,”Cisco”);

strcpy(p2,“systems”);

strcat(p1,p2);

printf(“%s”,p1);

}

Answer: Ciscosystems

The following variable is available in file1.c, who can access it?:

static int average;

Answer: all the functions in the file1.c can access the variable.

WHat will be the result of the following code?

#define TRUE 0 // some code

while(TRUE)

{

// some code

}

Answer: This will not go into the loop as TRUE is defined as 0.

What will be printed as the result of the operation below:

int x;

int modifyvalue()

{ return(x+=10);

} int changevalue(int x)

{ return(x+=1);

}

void main()

{ int x="10";

x++;

changevalue(x);

x++;

modifyvalue();

printf("First output:%dn",x);

x++;

changevalue(x);

printf("Second output:%dn",x);

modifyvalue();

printf("Third output:%dn",x);

}

Answer: 12 , 13 , 13

What will be printed as the result of the operation below:

main()

{ int x="10", y="15";

x = x++;

y = ++y;

printf(“%d %dn”,x,y);

}

Answer: 11, 16

What will be printed as the result of the operation below:

main()

{ int a="0";

if(a==0)

printf(“Cisco Systemsn”);

printf(“Cisco Systemsn”);

}

Answer: Two lines with “Cisco Systems” will be printed.

再次更新C++相关题集

1. 以下三条输出语句分别输出什么?[C易]

char str1[] = "abc";

char str2[] = "abc";

const char str3[] = "abc";

const char str4[] = "abc";

const char* str5 = "abc";

const char* str6 = "abc";

cout << boolalpha << ( str1==str2 ) << endl; // 输出什么?

cout << boolalpha << ( str3==str4 ) << endl; // 输出什么?

cout << boolalpha << ( str5==str6 ) << endl; // 输出什么?

13. 非C++内建型别 A 和 B,在哪几种情况下B能隐式转化为A?[C++中等]

答:

a. class B : public A { ……} // B公有继承自A,可以是间接继承的

b. class B { operator A( ); } // B实现了隐式转化为A的转化

c. class A { A( const B& ); } // A实现了non-explicit的参数为B(可以有其他带默认值的参数)构造函数

d. A& operator= ( const A& ); // 赋值操作,虽不是正宗的隐式类型转换,但也可以勉强算一个

12. 以下代码中的两个sizeof用法有问题吗?[C易]

void UpperCase( char str[] ) // 将 str 中的小写字母转换成大写字母

{ for( size_t i="0"; i<sizeof(str)/sizeof(str[0]); ++i )

if( 'a'<=str[i] && str[i]<='z' )

str[i] -= ('a'-'A' );

} char str[] = "aBcDe";

cout << "str字符长度为: " << sizeof(str)/sizeof(str[0]) << endl;

UpperCase( str );

cout << str << endl;

7. 以下代码有什么问题?[C难]

void char2Hex( char c ) // 将字符以16进制表示

{ char ch = c/0x10 + '0'; if( ch > '9' ) ch += ('A'-'9'-1);

char cl = c%0x10 + '0'; if( cl > '9' ) cl += ('A'-'9'-1);

cout << ch << cl << ' ';

} char str[] = "I love 中国";

for( size_t i="0"; i<strlen(str); ++i )

char2Hex( str[i] );

cout << endl;

4. 以下代码有什么问题?[C++易]

struct Test

{ Test( int ) {}

Test() {}

void fun() {}

};

void main( void )

{ Test a(1);

a.fun();

Test b();

b.fun();

}

5. 以下代码有什么问题?[C++易]

cout << (true?1:"1") << endl;

8. 以下代码能够编译通过吗,为什么?[C++易]

unsigned int const size1 = 2;

char str1[ size1 ];

unsigned int temp = 0;

cin >> temp;

unsigned int const size2 = temp;

char str2[ size2 ];

9. 以下代码中的输出语句输出0吗,为什么?[C++易]

struct CLS

{ int m_i;

CLS( int i ) : m_i(i) {}

CLS()

{ CLS(0);

} };

CLS obj;

cout << obj.m_i << endl;

10. C++中的空类,默认产生哪些类成员函数?[C++易]

答:

class Empty

{ public:

Empty(); // 缺省构造函数

Empty( const Empty& ); // 拷贝构造函数

~Empty(); // 析构函数

Empty& operator=( const Empty& ); // 赋值运算符

Empty* operator&(); // 取址运算符

const Empty* operator&() const; // 取址运算符 const

};

3. 以下两条输出语句分别输出什么?[C++难]

float a = 1.0f;

cout << (int)a << endl;

cout << (int&)a << endl;

cout << boolalpha << ( (int)a == (int&)a ) << endl; // 输出什么?

float b = 0.0f;

cout << (int)b << endl;

cout << (int&)b << endl;

cout << boolalpha << ( (int)b == (int&)b ) << endl; // 输出什么?

2. 以下反向遍历array数组的方法有什么错误?[STL易]

vector array;

array.push_back( 1 );

array.push_back( 2 );

array.push_back( 3 );

for( vector::size_type i="array".size()-1; i>=0; --i ) // 反向遍历array数组

{ cout << array[i] << endl;

}

6. 以下代码有什么问题?[STL易]

typedef vector IntArray;

IntArray array;

array.push_back( 1 );

array.push_back( 2 );

array.push_back( 2 );

array.push_back( 3 );

// 删除array数组中所有的2

for( IntArray::iterator itor="array".begin(); itor!=array.end(); ++itor )

{ if( 2 == *itor ) array.erase( itor );

}

11. 写一个函数,完成内存之间的拷贝。[考虑问题是否全面]

答:

void* mymemcpy( void *dest, const void *src, size_t count )

{

char* pdest = static_cast<char*>( dest );

const char* psrc = static_cast<const char*>( src );

if( pdest>psrc && pdest<psrc+cout ) 能考虑到这种情况就行了

{

for( size_t i="count-1"; i!=-1; --i )

pdest[i] = psrc[i];

}

else

{

for( size_t i="0"; i<count; ++i )

pdest[i] = psrc[i];

}

return dest;

}

int main( void )

{

char str[] = "0123456789";

mymemcpy( str+1, str+0, 9 );

cout << str << endl;

system( "Pause" );

return 0;

}

发表评论阅读全文(1049) | 回复(1)

50

诺基亚面试题目(电子类) 发表于 -1-31 20:48:33 ********************************************************************************************************

说明:

1、笔试共分两部分:第一部分为基础篇(必答题);第二部分为专业篇(选答题)。

2、应聘芯片设计岗位的同学请以书面形式回答问题并附简历参加应聘面试。

3、如不能参加现场招聘的同学,请将简历和答卷邮寄或发e-mail的形式(请注明应聘标题)给我们,以便我们对您作出客观、全面的评价。

********************************************************************************************************

第一部分:基础篇

(该部分共有试题8题,为必答题,每位应聘者按自己对问题的理解去回答,尽可能多回答你所知道的内容。若不清楚就写不清楚)。

1、我们公司的产品是集成电路,请描述一下你对集成电路的认识,列举一些与集成电路相关的内容(如讲清楚模拟、数字、双极型、CMOS、MCU、RISC、CISC、DSP、ASIC、FPGA等的概念)。

2、你认为你从事研发工作有哪些特点?

3、基尔霍夫定理的内容是什么?

4、描述你对集成电路设计流程的认识。

5、描述你对集成电路工艺的认识。

6、你知道的集成电路设计的表达方式有哪几种?

7、描述一个交通信号灯的设计。

8、我们将研发人员分为若干研究方向,对协议和算法理解(主要应用在网络通信、图象语音压缩方面)、电子系统方案的研究、用MCU、DSP编程实现电路功能、用ASIC设计技术设计电路(包括MCU、DSP本身)、电路功能模块设计(包括模拟电路和数字电路)、集成电路后端设计(主要是指综合及自动布局布线技术)、集成电路设计与工艺接口的研究。

你希望从事哪方面的研究?(可以选择多个方向。另外,已经从事过相关研发的人员可以详细描述你的研发经历)。

第二部分:专业篇

(根据你选择的方向回答以下你认为相关的专业篇的问题。一般情况下你只需要回答五道题以上,但请尽可能多回答你所知道的,以便我们了解你的知识结构及技术特点。)

1、请谈谈对一个系统设计的总体思路。针对这个思路,你觉得应该具备哪些方面的知识?

2、现有一用户需要一种集成电路产品,要求该产品能够实现如下功能:y=lnx,其中,x为4位二进制整数输入信号。y为二进制小数输出,要求保留两位小数。电源电压为3~5v假设公司接到该项目后,交由你来负责该产品的设计,试讨论该产品的设计全程。

3、简单描述一个单片机系统的主要组成模块,并说明各模块之间的数据流流向和控制流流向。简述单片机应用系统的设计原则。

4、请用方框图描述一个你熟悉的实用数字信号处理系统,并做简要的分析;如果没有,也可以自己设计一个简单的数字信号处理系统,并描述其功能及用途。

5、画出8031与2716(2K*8ROM)的连线图,要求采用三-八译码器,8031的P2.5,P2.4和P2.3参加译码,基本地址范围为3000H-3FFFH。该2716有没有重叠地址?根据是什么?若有,则写出每片2716的重叠地址范围。

6、用8051设计一个带一个8*16键盘加驱动八个数码管(共阳)的原理图。

7、PCI总线的含义是什么?PCI总线的主要特点是什么?

8、请简要描述HUFFMAN编码的基本原理及其基本的实现方法。

9、说出OSI七层网络协议中的四层(任意四层)。

10、中断的概念?简述中断的过程。

11、说说对数字逻辑中的竞争和冒险的理解,并举例说明竞争和冒险怎样消除。

12、要用一个开环脉冲调速系统来控制直流电动机的转速,程序由8051完成。简单原理如下:由P3.4输出脉冲的占空比来控制转速,占空比越大,转速越快;而占空比由K7-K0八个开关来设置,直接与P1口相连(开关拨到下方时为"0",拨到上方时为"1",组成一个八位二进制数N),要求占空比为 N/256。

下面程序用计数法来实现这一功能,请将空余部分添完整。

MOV P1,#0FFH

LOOP1 :MOV R4,#0FFH

--------

MOV R3,#00H

LOOP2 :MOV A,P1

--------

SUBB A,R3

JNZ SKP1

--------

SKP1:MOV C,70H

MOV P3.4,C

ACALL DELAY :此延时子程序略

--------

--------

AJMP LOOP1

13、用你熟悉的设计方式设计一个可预置初值的7进制循环计数器,15进制的呢?

14、请用HDL描述四位的全加法器、5分频电路。

15、简述FPGA等可编程逻辑器件设计流程。

16、同步电路和异步电路的区别是什么?

17、电压源、电流源是集成电路中经常用到的模块,请画出你知道的线路结构,简单描述其优缺点。

18、描述反馈电路的概念,列举他们的应用。19、放大电路的频率补偿的目的是什么,有哪些方法?

20、画出CMOS电路的晶体管级电路图,实现Y=A.B+C(D+E)

21、请分析如下电路所实现的功能。

22、A)

#i nclude

void testf(int*p)

{

*p+=1;

}

main()

{

int *n,m[2];

n=m;

m[0]=1;

m[1]=8;

testf(n);

printf("Data value is %d ",*n);

}

------------------------------

B)

#i nclude

void testf(int**p)

{

*p+=1;

}

main()

{int *n,m[2];

n=m;

m[0]=1;

m[1]=8;

testf(&n);

printf(Data value is %d",*n);

}

下面的结果是程序A还是程序B的?

Data value is 8

那么另一段程序的结果是什么?

23、用简单电路实现,当A为输入时,输出B波形为:A: B:

24、LC正弦波振荡器有哪几种三点式振荡电路,分别画出其原理图。

25、锁相环有哪几部分组成?

26、人的话音频率一般为300~3400HZ,若对其采样且使信号不失真,其最小的采样频率应为多大?若采用8KHZ的采样频率,并采用8bit的PCM编码,则存储一秒钟的信号数据量有多大?

27、在CMOS电路中,要有一个单管作为开关管精确传递模拟低电平,这个单管你会用P管还是N管,为什么?

28、画出由运放构成加法、减法、微分、积分运算的电路原理图。并画出一个晶体管级的运放电路。

29、数字滤波器的分类和结构特点。

30、DAC和ADC的实现各有哪些方法?

31、描述CMOS电路中闩锁效应产生的过程及最后的结果?

32、什么叫做OTP片、掩膜片,两者的区别何在?

33、列举几种集成电路典型工艺。工艺上常提到0.25,0.18指的是什么?

34、请描述一下国内的工艺现状。

35、请简述一下设计后端的整个流程?

36、有否接触过自动布局布线?请说出一两种工具软件。自动布局布线需要哪些基本元素?

37、半导体工艺中,掺杂有哪几种方式?

38、什么是NMOS、PMOS、CMOS?什么是增强型、耗尽型?什么是PNP、NPN?他们有什么差别?

39、为什么一个标准的倒相器中P管的宽长比要比N管的宽长比大?

40、硅栅COMS工艺中N阱中做的是P管还是N管,N阱的阱电位的连接有什么要求?

汉王笔试

1、下面是一些基本的数字电路知识问题,请简要回答之。

a) 什么是Setup 和Holdup时间?

Setup/hold time 是测试芯片对输入信号和时钟信号之间的时间要求。建立时间是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间-Setup time。如不满足setup time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟上升沿,数据才能被打入触发器。

保持时间是指触发器的时钟信号上升沿到来以后,数据稳定不变的时间。如果holdtime不够,数据同样不能被打入触发器。

b) 什么是竞争与冒险现象?怎样判断?如何消除?

c) 请画出用D触发器实现2倍分频的逻辑电路?

d) 什么是"线与"逻辑,要实现它,在硬件特性上有什么具体要求?

e) 什么是同步逻辑和异步逻辑?

f) 请画出微机接口电路中,典型的输入设备与微机接口逻辑示意图(数据接口、控制接口、所存器/缓冲器)。

g) 你知道那些常用逻辑电平?TTL与COMS电平可以直接互连吗?

2、 可编程逻辑器件在现代电子设计中越来越重要,请问:

a) 你所知道的可编程逻辑器件有哪些?

b) 试用VHDL或VERILOG、ABLE描述8位D触发器逻辑。

3、设想你将设计完成一个电子电路方案。请简述用EDA软件(如PROTEL)进行设计(包括原理图和PCB图)到调试出样机的整个过程。在各环节应注意哪些问题?

飞利浦-大唐笔试

1、用逻辑们和cmos电路实现ab+cd

2、用一个二选一mux和一个inv实现异或

3、给了reg的setup,hold时间,求中间组合逻辑的delay范围。

4. 如何解决亚稳态

5. 用verilog/vhdl写一个fifo控制器

6. 用verilog/vddl检测stream中的特定字符串

信威dsp软件面试题

1)DSP和通用处理器在结构上有什么不同,请简要画出你熟悉的一种DSP结构图

2)说说定点DSP和浮点DSP的定义(或者说出他们的区别)

3)说说你对循环寻址和位反序寻址的理解

4)请写出【-8,7】的二进制补码,和二进制偏置码。用Q15表示出0.5和-0.5

扬智电子笔试

第一题:用mos管搭出一个二输入与非门。

第二题:集成电路前段设计流程,写出相关的工具。

第三题:名词IRQ,BIOS,USB,VHDL,SDR

第四题:unix 命令cp -r, rm,uname

第五题:用波形表示D触发器的功能

第六题:写异步D触发器的verilog module

第七题:What is PC Chipset?

第八题:用传输门和倒向器搭一个边沿触发器

第九题:画状态机,接受1,2,5分钱的卖报机,每份报纸5分钱。

华为面试题

研发(硬件)

全都是几本模电数电信号单片机题目

1.用与非门等设计全加法器

2.给出两个门电路让你分析异同

3.名词:sram,ssram,sdram

4.信号与系统:在时域与频域关系

5.信号与系统:和4题差不多

6.晶体振荡器,好像是给出振荡频率让你求周期(应该是单片机的,12分之一周期....)

7.串行通信与同步通信异同,特点,比较

8.RS232c高电平脉冲对应的TTL逻辑是?(负逻辑?)

9.延时问题,判错

10.史密斯特电路,求回差电压

11.VCO是什么,什么参数(压控振荡器?)

12. 用D触发器做个二分颦的电路.又问什么是状态图

13. 什么耐奎斯特定律,怎么由模拟信号转为数字信号

14. 用D触发器做个4进制的计数

15.那种排序方法最快?

16.时钟周期为T,触发器D1的建立时间最大为T1max,最小为T1min。组合逻辑电路最大延

迟为T2max,最小为T2min。问,触发器D2的建立时间T3和保持时间应满足什么条件。

研发(软件)

用C语言写一个递归算法求N!;

给一个C的函数,关于字符串和数组,找出错误;

防火墙是怎么实现的?

你对哪方面编程熟悉?

新太硬件

(1)d触发器和d锁存器的区别

(2)有源滤波器和无源滤波器的原理及区别

(3)sram,falsh memory,及dram的区别?

(4)iir,fir滤波器的异同

(5)冒泡排序的原理

(6)操作系统的功能

(7)学过的计算机语言及开发的系统

(8)拉氏变换和傅立叶变换的表达式及联系。 发表评论阅读全文(6493) | 回复(10)

0

苏州飞思卡尔面试经过 发表于 -1-31 20:46:26 它是我面试最爽的一个公司,那天晚上我和gyw去参加他的宣讲会,害怕交大不让早进,我们还特意晚去了10几分,没看见前面

的宣传片很可惜。宣讲会讲了2个小时,开场由hr简单介绍公司情况,随后由一个自身的工程师讲了很久,听得我都快睡着了。不过

马上又上来了一个帅外国人,他是负责天津的。他的英语英语发音很标准,我基本都能听都,这时大家都很静,仔细听他讲,最后

我又投了简历,虽然已经网投了,但是为了保险,不就多一张纸吗,呵呵。他们说晚上12点收不到电话通知面试就没戏了。

晚上我等到了12点,竟然没电话,没机会了,故而睡之。没想到12点半,电话吵醒了我,fsl的面试电话,通知明天下午2点面试。

我简直兴奋极了,好久都没睡着。到了第二天,问了其他人才知道只有我让去面试了,虽然下午面试,感觉排到后面就没机会,

我可要珍惜这珍贵的机会,因为我相信只要努力就有机会。下午到了交大,看到登记表上竟然面试的人才20人左右,我觉得我

能去面试时很大的luck呀。在外面等了会,有人叫我进去,第一面见了个jj,她很干练,也比较有气质,起初以为是技术manager,

后来问了fsl里的人才知道,她是hr manager,知到后非常佩服fsl,它们的hr都懂这么多技术。她对我说的第一句话就是“看了你

的简历,觉得你是最适合我们的人”,但是很高兴,就先作了自我介绍,讲了教育背景和项目经历,这时她也看了我的简历。完了

后她问了很多项目的问题,还有时序、综合、asic设计流程、低功耗、验证等多方面的知识,由构架问到细节,自我感觉打得很不

错,很少打板子,当然也有不会的,毕竟学校条件差,很多还没接触过。所以我就虚心和她交流,她也仔细得给我讲,感觉受益匪浅。

然后我们又聊了我在学校的学习和生活,后面节奏基本由我控制了,聊得谈笑风生,感觉很好。1小时后,她说我这边没问题,很希

望我去fsl,还说了他们的offer给得很晚(12月中旬),希望我耐心等,我也说了我的难处,然后让我出去等下一个manager的面试,

我说4点还要去hw3面,希望他们能面试快点,她就笑着答应我,放心马上安排你面试。我刚出去就有被叫了进来,这次是一个很沉稳的gg,

他说话很稳重,也是让我最我介绍,随后问了些项目的问题,我这时已经进入状态,说起话来也很振奋。她对我的印象也很好,一直在劝

我耐心等offer,最后握手分别。面试完后,我就兴致勃勃的去做402到高新面hw3面。

过了5天,我就有收到苏州那个2面经理的电话confirm,到了12月就顺利拿到offer。

整体感觉,面fsl要知识面广点、对自己的课题要很熟悉,而且你的态度要非常自信+aggressive。这样才有可能。

发表评论阅读全文(2552) | 回复(6)

1

面试威盛(转载) 发表于 -1-13 23:16:00

发表评论阅读全文(608) | 回复(0)

1

我的面试经历(微电子) 发表于 -1-13 23:14:35 下午就要签约了,上午一个人在教研室整理了一下这段时间的生活,发觉还是有很多收

获的。

这期间经历过一些公司,有过一些感受,在这里记载下来,也算为师弟师妹们做个参考

准确的说我的求职过程应该从今年9月28号开始算起,到现在已经是两个多月过去了。

第一次面试,呵呵,其实我一直都不把它当作一次面试的,

是9月28号在宁波人才交流会上。提到宁波人才交流会,我想多说两句。

每年九月份或者十月份,宁波都会举办一次所谓的万人交流会,就是由宁波出车费,

请全国各著名高校(今年大概有二十多所吧)到宁波参加两天左右的人才交流。

实际上就我所知,高校去的人有百分之七十以上都是抱着有人给车费,

顺便去那边旅游的心理过去的,实际效果可想而知。

我早上去了会场,找老师报了道,因为事先安排的是下午到上海,上午没事就和舍友在

会场里面顺便逛了逛

呵呵,没想到还真碰到两个招微电子的公司。一个是宁波立立电子,另一个就是中纬积

体电路。

前者,我投了简历,一位老总和我聊了会,然后还很时髦的用e文和我交谈,大庭广众,

就我那磕磕巴巴的e文,真是非常尴尬,不过好在那位老总e文也很粑,总算糊弄过去了

后来听舍友说,他与老总英文交流以后,老总对交大学生的评价是e文不错,呵呵,当时

听了真是寒啊。

另一个中纬积体就不这么给面子了,一位还挺pp的mm只是用眼角扫了一眼我的简历,

直接就退回来了,说他们不招设计的。呵呵,这该是我收到的第一份拒信吧。

结果:宁波立立电子要我去工厂干上一年,美其名曰:基层锻炼。呵呵

第二次面试就到了10月6号了,地点是西安喜来登饭店,

我发觉好多公司到西安都是去喜来登,可能是世界连锁的原因。

坐了近一个小时的公共汽车,好不容易到了面试房间。

面试官是普诚科技的黄总,普诚科技的母公司是台湾的prinston,

老实说以前并没有听说过,普诚科技是今年才在深圳成立的子公司。

因为他们是今年在交大bbs上面最早出现的公司,所以就去了。

面试过程中,一个技术问题没有问,就大体谈了谈自己做过的课题。

黄总问得最多的话该是,你做了这么多数字的工作转模拟你愿意吗?

呵呵,我当然不愿意,不过还是很勉强的说,其实我也挺喜欢模拟的。

后来的结果证明了面试官还真的是有火眼睛睛的,我直接被bs了。

结论:千万别为了得到一个工作而去迎合任何人,特别是违心的迎合。

普诚事件以后好长时间都没有公司过来,我也就安心的工作了二十来天。

不过期间在网上投过两三分简历,其中一份带来了另外一次机会,这是后话了,后面会

提到。

第三次面试时间是11月6号,地点是交大南洋大酒店,面试公司就是今天下午就将和我签

约的苏州瑞晟。

当然面试官就是早就如雷贯耳的郭经理了,呵呵,马上就是我的上司了,我是不敢直呼

其名了。

因为早就听过以前师兄们面试的艰辛历程,所以我也算是早做准备。

面试过程比我想象中来得随和,平静。刚开始,就是问课题情况,不过,问得十分细致

每一个接口信号流向,来源,适应情况都无一遗漏。

接下来就是即兴题目,我做的只是一个数字电路的组合逻辑题。

入手处很easy,但随着不断的深入,不断地增加条件,我的头也是越来越大。

整个过程我被卡住过一次,想了两分钟还是不知道怎么办,只好告诉面试官我不会。

瑞晟面试过程中最好的地方就是一个交流的过程,不会的时候,面试官会提醒你,

然后你继续往下做,直到共同完成这道题。我感觉这些题完全是即兴出的,因为在我解

题过程中,

很多时候面试官也不知道答案,他也是一步一步推下去的。

结论:瑞晟面试一定要对自己的课题极为熟悉,千万别想着敷衍过去。

再有就是重视基础,包括一些必要的器件知识。

因为在最后我还被问道body effect的问题,问题不是直接问,是变着花样问,

所以深入吃透物理原理很重要。

面试了瑞晟,过了几天瑞晟的兄弟公司炬力也过来了,炬力要先通过笔试,然后才参加

面试。

我记得面试那天是11月11号,地点还是南洋大酒店。

面试中,面试官和我主要是针对笔试中的题目完成情况进行了讨论。

顺带的他问了问课题上的情况,不过问得不如 痍上晗 ,只需要大致说说就可以了。

炬力面试还有一个最重要目的就是要了解被面试者是否愿意立即和他们签约。

因为他们在来学校以前都会事先找已经在他们公司工作的师兄师姐摸底,

而且事先他们也会借着到交大来检查三楼联合实验室成员工作情况的机会,向老师们了

解将毕业学生的详细情况。

所以他们对系里面的学生的情况应该是比较了解的。所以只要参加了面试,他们都会直

接要求马上签约。

这也为师弟师妹们提个醒:如果有人有兴趣去炬力工作的话,不妨事先联络一下已经在

炬力工作的师兄师姐们。

老实说,除了珠海地方不是太好以外,其他任何方面炬力在国内都算是比较好的公司了

,而且对交大学生特别客气。

另外还要提一下炬力的笔试题目:做ic方面的话,研究生题目包括很杂,

今年既有管子级电路功能的识别,又有两道写代码的题(包括三、五分频、和一个类似

于选择译码器的题)

还有两道模拟电路的题,一个电流镜应用方面的,和一个放大器方面的。

上面提到了我在网上投过几分简历,其中一份就是给威盛的。当然我也就收到了威盛的

笔试通知。

我投的是logic,笔试题目在bbs上面可以找到我也就不多说了。

我说说面试过程,VIA的面试分三轮,两轮技术面试,一轮人力资源面试。采用类似于p

ipeline方式进行。

第一个面试官,是一位刚从美国赶过来的台湾人。国语不是很好,面试过程中常用e文。

刚开始是问课题方面的问题,看我比较熟练,说了两分钟,他就换了话题。

开始问一个类似于交通灯的题目,不过不像我们普通碰到的交通灯,问题方式和瑞晟十

分类似,

逐步深入,状态机从两个到四个,再到八个,再加各种条件。

幸运的是,这次我没有卡壳,面试过程进行得比较顺利,

半个小时左右他就让我去二面房间了。

二面的是一个刚从台湾赶过来的更纯的台湾人,这个台湾人比较傲慢,眼睛盯着电脑,

不用抬头,就直接发问。

问题倒是挺简单,一个是关于cache的理解,再一个是关于时钟树方面的问题,最后还问

了一个极为easy的iq题。

呵呵,当时我就告诉他,这个题到处都能找到,

不过台湾人坚持说他就想看看我的思维过程。

呵呵,答案都知道,这还用说,当然是非常敏捷了。

末了,就该是三面了,是一个人力资源部的女士做的面试官。

三面气氛非常轻松,因为她刚好是绵阳人,我们算是老乡,一下子关系倒是拉近了不少

她问得倒是挺细,包括我的期望待遇,和有没有别的公司给我offer这些情况。

我也没有一点隐瞒,是什么就说什么。

可能是我的坦率让她让她很欣赏,她也给我说了一些当时还相对属于秘密的事情。呵呵

结论:其实每个公司做HR的人,都是阅人无数的,

很多事情不用问都知道面试者是怎么想的,

这个时候遮遮掩掩反而没什么意思了。

快吃午饭了,还有两家公司就等到下午签完回来再写吧。

呵呵,还有两家公司继续写。

两家公司一家是杰得微电子,另一家就是Intel了。

杰得微电子在上海,是一家刚成立的公司。

我想很多人都和我一样,目标城市排在第一的肯定是上海。

杰得是我捞到面试机会的第一家上海公司,所以也比较重视这个机会。

面试前打听了很多相关的情况,杰得的背景是夏新投资,由一个归国

博士办起来的。公司规模很小,只有24名员工,其中有12名来自清华。

公司主要是做多媒体,视频音频方面的ic。可能清华学生的推积效应

的原故,面试那天早上交大电信学院去了近20个人。

杰得的面试和笔试是在一个周五的早上,而且是同时进行的。

听公司作宣讲的人说,这样安排是为了节省时间。他们星期天还要赶回去

加班把损失的时间补回来。呵呵,好高效的公司,好紧张的节奏。

宣讲会上那个清华背景的软件部主管,大吹公司人员素质多高多高,

不过论据说来说去主要就是一个:因为他们是清华的。真是ft!

然后就是边笔试边面试,笔试题目倒是很简单,都是些数字电路的东西

面试的时候,也是一个清华的小伙。小伙倒是挺和蔼的。

刚开始也是从课题入手,感觉他对MCU懂得也不多,也问不出什么来,

基本都是我在讲。课题讲完了,就轮到他发问了,第一个问题是:

你知道什么是商编码吗?我答:没听说过;然后接着是mpeg2协议你了解多少?

我答:没接触过。那基于ARM核的嵌入式系统你知道多少?

这个我就知道ARM核是个risc结构,网上能够找到ARM7的源码,其他的我就不知道了。

呵呵,小伙笑:“arm7?人家arm9都早做出来了。”我晕。

最后的一个问题是:“你在软件方面有什么擅长的?开发过什么样的程序?”

我kao,我要软硬兼通,什么都会的话,我早去intel了,还跑你这来面个屁啊。

小伙最后意味深长的说:“我们公司的员工无论学硬件毕业的,还是软件毕业的,

都是两方面都很精通的。”

这次面试的结果是最烂的,不过我也真的很怀疑,真的有那样的员工会去杰得吗?

这次面试基本也就打消了我去上海的希望。我发觉今年找工作和上海老是对不上路。

要么是像IPCORE,汉芯之流的根本就不给我面试机会,要么就是杰得这样牛逼哄哄,

根本瞧不上我的。

又过了几天Intel来了交大,25号下午和几个同学到宪梓堂听了一下午的宣讲会

并投了一份简历。当天晚上就收到电话说第二天早上去喜来登面试。

因为我投的是成都和上海的factory,不是研发中心,所以不需要笔试,直接面试。

面试前后就持续了半个小时,全英文的。面试官是一个中年人,口语连音很多,

好多都听不清楚。因为是英文面试,问题倒是挺简单的,无非就是问做过什么工作,

工作进展怎么样,是否是team leader,怎么处理人际关系。与其说是一次interview,

更不如说是一个conversation。气氛还是挺好的。

面试结束,说三个礼拜以后给结果,三个礼拜肯定是等不了的那,

而且在工厂做PE毕竟不是我的最爱。整个过程就权当是一次practice吧。

面试经历叙述到这里就该打住了。

总结一下,前前后后面试过7个公司,除去宁波立立电子不说,其余几个公司中

面试过程气氛最随和,但是思维最紧张的该算是瑞晟;

HR部门效率最高,态度最好,操作最规范的则是威盛;

笔试题最难的肯定是Intel(虽然我没做过,不过网上可以找得到);

呵呵,当然要求最高的也是Intel,不过杰得也差不了多少。

最后我选择的公司是瑞晟(苏州)。

前面有人问为什么不选择威盛,要选瑞晟?

这两家公司不同人有不同看问题的角度。从我自己的角度看,

瑞晟最吸引我的地方是公司的培训,还有发展方向也很好,

公司工作重心以后主要会放在视频方面,这也该是当前最热门的

方向之一了吧。

威盛,公司比较大,管理比较规范。

但是北威给的offer里面提到logic的工作主要是做

verification和写testing vector。

当然还有一点:那就是待遇问题,瑞晟给的待遇应该是这些公司中最高的了。

呵呵,这点该也是很吸引人的地方了。

写了这么多,就是想给师弟师妹们稍稍引个路。

还是那句话,各人有自己看问题的角度,也难免会有偏颇。

所以更重要的体验还是需要自己在求职过程中自己领会。

发表评论阅读全文(2111) | 回复(0)

1

各大公司电子类招聘题目精选1 发表于 -1-13 18:02:34 各大公司电子类招聘题目精选[转] 模拟电路

1、基尔霍夫定理的内容是什么?(仕兰微电子)

2、平板电容公式(C=εS/4πkd)。(未知)

3、最基本的如三极管曲线特性。(未知)

4、描述反馈电路的概念,列举他们的应用。(仕兰微电子)

5、负反馈种类(电压并联反馈,电流串联反馈,电压串联反馈和电流并联反馈) ;负反馈的优点(降低放大器的增益灵敏度,改变输入电阻和输出电阻,改善放 大器的线性和非线性失真,有效地扩展放大器的通频带,自动调节作用)(未知 )

6、放大电路的频率补偿的目的是什么,有哪些方法?(仕兰微电子)

7、频率响应,如:怎么才算是稳定的,如何改变频响曲线的几个方法。(未知)

8、给出一个查分运放,如何相位补偿,并画补偿后的波特图。(凹凸)

9、基本放大电路种类(电压放大器,电流放大器,互导放大器和互阻放大器), 优缺点,特别是广泛采用差分结构的原因。(未知)

10、给出一差分电路,告诉其输出电压Y+和Y-,求共模分量和差模分量。(未知)

11、画差放的两个输入管。(凹凸)

12、画出由运放构成加法、减法、微分、积分运算的电路原理图。并画出一个晶 体管级的 运放电路。(仕兰微电子)

13、用运算放大器组成一个10倍的放大器。(未知)

14、给出一个简单电路,让你分析输出电压的特性(就是个积分电路),并求输 出端某点 的 rise/fall时间。(Infineon笔试试题)

15、电阻R和电容C串联,输入电压为R和C之间的电压,输出电压分别为C上电压和 R上电压,要求制这两种电路输入电压的频谱,判断这两种电路何为高通滤波器 ,何为低通滤波器。当RC<<T时,给出输入电压波形图,绘制两种电路的输出波 形图。(未知)

16、有源滤波器和无源滤波器的原理及区别?(新太硬件)

17、有一时域信号S=V0sin(2pif0t)+V1cos(2pif1t)+V2sin(2pif3t+90),当其通过 低通、带通、高通滤波器后的信号表示方式。(未知)

18、选择电阻时要考虑什么?(东信笔试题)

19、在CMOS电路中,要有一个单管作为开关管精确传递模拟低电平,这个单管你 会用P管还是N管,为什么?(仕兰微电子)

20、给出多个mos管组成的电路求5个点的电压。(Infineon笔试试题)

21、电压源、电流源是集成电路中经常用到的模块,请画出你知道的线路结构, 简单描述 其优缺点。(仕兰微电子)

22、画电流偏置的产生电路,并解释。(凹凸)

23、史密斯特电路,求回差电压。(华为面试题)

24、晶体振荡器,好像是给出振荡频率让你求周期(应该是单片机的,12分之一周期 ....) (华为面试题)

25、LC正弦波振荡器有哪几种三点式振荡电路,分别画出其原理图。(仕兰微电 子)

26、VCO是什么,什么参数(压控振荡器?) (华为面试题)

27、锁相环有哪几部分组成?(仕兰微电子)

28、锁相环电路组成,振荡器(比如用D触发器如何搭)。(未知)

29、求锁相环的输出频率,给了一个锁相环的结构图。(未知)

30、如果公司做高频电子的,可能还要RF知识,调频,鉴频鉴相之类,不一一列 举。(未知)

31、一电源和一段传输线相连(长度为L,传输时间为T),画出终端处波形,考虑 传输线无损耗。给出电源电压波形图,要求绘制终端波形图。(未知)

32、微波电路的匹配电阻。(未知)

33、DAC和ADC的实现各有哪些方法?(仕兰微电子)

34、A/D电路组成、工作原理。(未知)

35、实际工作所需要的一些技术知识(面试容易问到)。如电路的低功耗,稳定, 高速如何做到,调运放,布版图注意的地方等等,一般会针对简历上你所写做过的 东西具体问,肯定会问得很细(所以别把什么都写上,精通之类的词也别用太多 了),这个东西各个人就不一样了,不好说什么了。(未知) _______________________________________________________________________

数字电路

1、同步电路和异步电路的区别是什么?(仕兰微电子)

2、什么是同步逻辑和异步逻辑?(汉王笔试)

同步逻辑是时钟之间有固定的因果关系。异步逻辑是各时钟之间没有固定的因果 关系。

3、什么是"线与"逻辑,要实现它,在硬件特性上有什么具体要求?(汉王笔试)

线与逻辑是两个输出信号相连可以实现与的功能。在硬件上,要用oc门来实现, 由于不用 oc门可能使灌电流过大,而烧坏逻辑门。同时在输出端口应加一个上 拉电阻。

4、什么是Setup 和Holdup时间?(汉王笔试)

5、setup和holdup时间,区别.(南山之桥)

6、解释setup time和hold time的定义和在时钟信号延迟时的变化。(未知)

7、解释setup和hold time violation,画图说明,并说明解决办法。(威盛VIA

.11.06 上海笔试试题)

Setup/hold time 是测试芯片对输入信号和时钟信号之间的时间要求。建立时间 是指触发器的时钟信号上升沿到来以前,数据稳定不变的时间。输入信号应提前 时钟上升沿(如上升沿有效)T时间到达芯片,这个T就是建立时间-Setup time. 如不满足setup time,这个数据就不能被这一时钟打入触发器,只有在下一个时钟 上升沿,数据才能被打入触发器。保持时间是指触发器的时钟信号上升沿到来以 后,数据稳定不变的时间。如果hold time 不够,数据同样不能被打入触发器。

建立时间(Setup Time)和保持时间(Hold time)。建立时间是指在时钟边沿前, 数据信号需要保持不变的时间。保持时间是指时钟跳变边沿后数据信号需要保持 不变的时间。如果不满足建立和保持时间的话,那么DFF将不能正确地采样到数据 ,将会出现 metastability的情况。如果数据信号在时钟沿触发前后持续的时间 均超过建立和保持时间,那么超过量就分别被称为建立时间裕量和保持时间裕量 。

8、说说对数字逻辑中的竞争和冒险的理解,并举例说明竞争和冒险怎样消除。( 仕兰微 电子)

9、什么是竞争与冒险现象?怎样判断?如何消除?(汉王笔试)

在组合逻辑中,由于门的输入信号通路中经过了不同的延时,导致到达该门的时 间不一致叫竞争。产生毛刺叫冒险。如果布尔式中有相反的信号则可能产生竞争 和冒险现象。解决方法:一是添加布尔式的消去项,二是在芯片外部加电容。

10、你知道那些常用逻辑电平?TTL与COMS电平可以直接互连吗?(汉王笔试)

常用逻辑电平:12V,5V,3.3V;TTL和CMOS不可以直接互连,由于TTL是在0.3- 3.6V之间,而CMOS则是有在12V的有在5V的。CMOS输出接到TTL是可以直接互连。 TTL接到CMOS需要在输出端口加一上拉电阻接到5V或者12V。

11、如何解决亚稳态。(飞利浦-大唐笔试)

亚稳态是指触发器无法在某个规定时间段内达到一个可确认的状态。当一个触发 器进入亚

稳态时,既无法预测该单元的输出电平,也无法预测何时输出才能稳定在某个正 确的电平

上。在这个稳定期间,触发器输出一些中间级电平,或者可能处于振荡状态,并 且这种无

用的输出电平可以沿信号通道上的各个触发器级联式传播下去。

12、IC设计中同步复位与异步复位的区别。(南山之桥)

13、MOORE 与 MEELEY状态机的特征。(南山之桥)

14、多时域设计中,如何处理信号跨时域。(南山之桥)

15、给了reg的setup,hold时间,求中间组合逻辑的delay范围。(飞利浦-大唐 笔试)

Delay < period - setup – hold

16、时钟周期为T,触发器D1的建立时间最大为T1max,最小为T1min。组合逻辑电 路最大延

迟为T2max,最小为T2min。问,触发器D2的建立时间T3和保持时间应满足什么条件 。(华

为)

17、给出某个一般时序电路的图,有Tsetup,Tdelay,Tck->q,还有 clock的delay, 写出决

定最大时钟的因素,同时给出表达式。(威盛VIA .11.06 上海笔试试题)

18、说说静态、动态时序模拟的优缺点。(威盛VIA .11.06 上海笔试试题)

19、一个四级的Mux,其中第二级信号为关键信号如何改善timing。(威盛VIA

.11.06 上海笔试试题)

20、给出一个门级的图,又给了各个门的传输延时,问关键路径是什么,还问给 出输入,

使得输出依赖于关键路径。(未知)

21、逻辑方面数字电路的卡诺图化简,时序(同步异步差异),触发器有几种( 区别,优

点),全加器等等。(未知)

22、卡诺图写出逻辑表达使。(威盛VIA .11.06 上海笔试试题)

23、化简F(A,B,C,D)= m(1,3,4,5,10,11,12,13,14,15)的和。(威盛)

24、please show the CMOS inverter schmatic,layout and its cross sectionwith P-

well process.Plot its transfer curve (Vout-Vin) And also explain the

operation region of PMOS and NMOS for each segment of the transfer curve? (威

盛笔试题circuit design-beijing-03.11.09)

25、To design a CMOS invertor with balance rise and fall time,please define

the ration of channel width of PMOS and NMOS and explain?

26、为什么一个标准的倒相器中P管的宽长比要比N管的宽长比大?(仕兰微电子 )

27、用mos管搭出一个二输入与非门。(扬智电子笔试)

28、please draw the transistor level schematic of a cmos 2 input AND gate and

explain which input has faster response for output rising edge.(less delay

time)。(威盛笔试题circuit design-beijing-03.11.09)

29、画出NOT,NAND,NOR的符号,真值表,还有transistor level的电路。 (Infineon笔

试)

30、画出CMOS的图,画出tow-to-one mux gate。(威盛VIA .11.06 上海笔 试试题)

31、用一个二选一mux和一个inv实现异或。(飞利浦-大唐笔试)

32、画出Y=A*B+C的cmos电路图。(科广试题)

33、用逻辑们和cmos电路实现ab+cd。(飞利浦-大唐笔试)

34、画出CMOS电路的晶体管级电路图,实现Y=A*B+C(D+E)。(仕兰微电子)

35、利用4选1实现F(x,y,z)=xz+yz’。(未知)

36、给一个表达式f=xxxx+xxxx+xxxxx+xxxx用最少数量的与非门实现(实际上就 是化

简)。

37、给出一个简单的由多个NOT,NAND,NOR组成的原理图,根据输入波形画出各点 波形。

(Infineon笔试)

38、为了实现逻辑(A XOR B)OR (C AND D),请选用以下逻辑中的一种,并说 明为什

么?1)INV 2)AND 3)OR 4)NAND 5)NOR 6)XOR 答案:NAND(未 知)

39、用与非门等设计全加法器。(华为)

40、给出两个门电路让你分析异同。(华为)

41、用简单电路实现,当A为输入时,输出B波形为…(仕兰微电子)

42、A,B,C,D,E进行投票,多数服从少数,输出是F(也就是如果A,B,C,D,E中1的 个数比0

多,那么F输出为1,否则F为0),用与非门实现,输入数目没有限制。(未知)

43、用波形表示D触发器的功能。(扬智电子笔试)

44、用传输门和倒向器搭一个边沿触发器。(扬智电子笔试)

45、用逻辑们画出D触发器。(威盛VIA .11.06 上海笔试试题)

46、画出DFF的结构图,用verilog实现之。(威盛)

47、画出一种CMOS的D锁存器的电路图和版图。(未知)

48、D触发器和D锁存器的区别。(新太硬件面试)

49、简述latch和filp-flop的异同。(未知)

50、LATCH和DFF的概念和区别。(未知)

51、latch与register的区别,为什么现在多用register.行为级描述中latch如何 产生的。

(南山之桥)

52、用D触发器做个二分颦的电路.又问什么是状态图。(华为)

53、请画出用D触发器实现2倍分频的逻辑电路?(汉王笔试)

54、怎样用D触发器、与或非门组成二分频电路?(东信笔试)

55、How many flip-flop circuits are needed to divide by 16? (Intel) 16 分频?

56、用filp-flop和logic-gate设计一个1位加法器,输入carryin和current- stage,输出

carryout和next-stage. (未知)

57、用D触发器做个4进制的计数。(华为)

58、实现N位Johnson Counter,N=5。(南山之桥)

59、用你熟悉的设计方式设计一个可预置初值的7进制循环计数器,15进制的呢? (仕兰

微电子)

60、数字电路设计当然必问Verilog/VHDL,如设计计数器。(未知)

61、BLOCKING NONBLOCKING 赋值的区别。(南山之桥)

62、写异步D触发器的verilog module。(扬智电子笔试)

module dff8(clk , reset, d, q);

input clk;

input reset;

input [7:0] d;

output [7:0] q;

reg [7:0] q;

always @ (posedge clk or posedge reset)

if(reset)

q <= 0;

else

q <= d;

endmodule

63、用D触发器实现2倍分频的Verilog描述?(汉王笔试)

module divide2( clk , clk_o, reset);

input clk , reset;

output clk_o;

wire in;

reg out ;

always @ ( posedge clk or posedge reset)

if ( reset)

out <= 0;

else

out <= in;

assign in = ~out;

assign clk_o = out;

endmodule

64、可编程逻辑器件在现代电子设计中越来越重要,请问:a) 你所知道的可编程 逻辑器

件有哪些? b) 试用VHDL或VERILOG、ABLE描述8位D触发器逻辑。(汉王笔试)

PAL,PLD,CPLD,FPGA。

module dff8(clk , reset, d, q);

input clk;

input reset;

input d;

output q;

reg q;

always @ (posedge clk or posedge reset)

if(reset)

q <= 0;

else

q <= d;

endmodule

65、请用HDL描述四位的全加法器、5分频电路。(仕兰微电子)

66、用VERILOG或VHDL写一段代码,实现10进制计数器。(未知)

67、用VERILOG或VHDL写一段代码,实现消除一个glitch。(未知)

68、一个状态机的题目用verilog实现(不过这个状态机画的实在比较差,很容易 误解

的)。(威盛VIA .11.06 上海笔试试题)

69、描述一个交通信号灯的设计。(仕兰微电子)

70、画状态机,接受1,2,5分钱的卖报机,每份报纸5分钱。(扬智电子笔试)

71、设计一个自动售货机系统,卖soda水的,只能投进三种硬币,要正确的找回 钱

数。 (1)画出fsm(有限状态机);(2)用verilog编程,语法要符合 fpga设计

的要求。(未知)

72、设计一个自动饮料售卖机,饮料10分钱,硬币有5分和10分两种,并考虑找零 :(1)

画出fsm(有限状态机);(2)用verilog编程,语法要符合fpga设计的要求;( 3)设计

工程中可使用的工具及设计大致过程。(未知)

73、画出可以检测10010串的状态图,并verilog实现之。(威盛)

74、用FSM实现101101的序列检测模块。(南山之桥)

a为输入端,b为输出端,如果a连续输入为1101则b输出为1,否则为0。

例如a: 0001100110110100100110

b: 0000000000100100000000

请画出state machine;请用RTL描述其state machine。(未知)

75、用verilog/vddl检测stream中的特定字符串(分状态用状态机写)。(飞利 浦-大唐

笔试)

76、用verilog/vhdl写一个fifo控制器(包括空,满,半满信号)。(飞利浦-大 唐笔试)

77、现有一用户需要一种集成电路产品,要求该产品能够实现如下功能:y=lnx, 其中,x

为4位二进制整数输入信号。y为二进制小数输出,要求保留两位小数。电源电压 为3~5v假

设公司接到该项目后,交由你来负责该产品的设计,试讨论该产品的设计全程。 (仕兰微

电子)

78、sram,falsh memory,及dram的区别?(新太硬件面试)

79、给出单管DRAM的原理图(西电版《数字电子技术基础》作者杨颂华、冯毛官 205页图9

-14b),问你有什么办法提高refresh time,总共有5个问题,记不起来了。(降 低温

度,增大电容存储容量)(Infineon笔试)

80、Please draw schematic of a common SRAM cell with 6 transistors,point out

which nodes can store data and which node is word line control? (威盛 笔试题

circuit design-beijing-03.11.09)

81、名词:sram,ssram,sdram

名词IRQ,BIOS,USB,VHDL,SDR

IRQ: Interrupt ReQuest

BIOS: Basic Input Output System

USB: Universal Serial Bus

VHDL: VHIC Hardware Description Language

SDR: Single Data Rate

压控振荡器的英文缩写(VCO)。

动态随机存储器的英文缩写(DRAM)。

名词解释,无聊的外文缩写罢了,比如PCI、ECC、DDR、interrupt、pipeline、

IRQ,BIOS,USB,VHDL,VLSI VCO(压控振荡器) RAM (动态随机存储器),FIR IIR DFT(离散

傅立叶变换)或者是中文的,比如:a.量化误差 b.直方图 c.白平衡 _______________________________________________________________________

文章引用自:/user82/yangbiaocn/index.html 发表评论阅读全文(890) | 回复(1)

0

各大公司电子类招聘题目精选 发表于 -1-13 18:00:35 IC设计基础(流程、工艺、版图、器件)

1、我们公司的产品是集成电路,请描述一下你对集成电路的认识,列举一些与集 成电路

相关的内容(如讲清楚模拟、数字、双极型、CMOS、MCU、RISC、CISC、DSP、 ASIC、FPGA

等的概念)。(仕兰微面试题目)

2、FPGA和ASIC的概念,他们的区别。(未知)

答案:FPGA是可编程ASIC。

ASIC:专用集成电路,它是面向专门用途的电路,专门为一个用户设计和制造的。 根据一

个用户的特定要求,能以低研制成本,短、交货周期供货的全定制,半定制集成 电路。与

门阵列等其它ASIC(Application Specific IC)相比,它们又具有设计开发周期短 、设计

制造成本低、开发工具先进、标准产品无需测试、质量稳定以及可实时在线检验 等优点

3、什么叫做OTP片、掩膜片,两者的区别何在?(仕兰微面试题目)

4、你知道的集成电路设计的表达方式有哪几种?(仕兰微面试题目)

5、描述你对集成电路设计流程的认识。(仕兰微面试题目)

6、简述FPGA等可编程逻辑器件设计流程。(仕兰微面试题目)

7、IC设计前端到后端的流程和eda工具。(未知)

8、从RTL synthesis到tape out之间的设计flow,并列出其中各步使用的tool.( 未知)

9、Asic的design flow。(威盛VIA .11.06 上海笔试试题)

10、写出asic前期设计的流程和相应的工具。(威盛)

11、集成电路前段设计流程,写出相关的工具。(扬智电子笔试)

先介绍下IC开发流程:

1.)代码输入(design input)

用vhdl或者是verilog语言来完成器件的功能描述,生成hdl代码

语言输入工具:SUMMIT VISUALHDL

MENTOR RENIOR

图形输入: composer(cadence);

viewlogic (viewdraw)

2.)电路仿真(circuit simulation)

将vhd代码进行先前逻辑仿真,验证功能描述是否正确

数字电路仿真工具:

Verolog: CADENCE Verolig-XL

SYNOPSYS VCS

MENTOR Modle-sim

VHDL : CADENCE NC-vhdl

SYNOPSYS VSS

MENTOR Modle-sim

模拟电路仿真工具:

***ANTI HSpice pspice,spectre micro microwave: eesoft : hp

3.)逻辑综合(synthesis tools)

逻辑综合工具可以将设计思想vhd代码转化成对应一定工艺手段的门级电路;将初 级仿真 中所没有考虑的门沿(gates delay)反标到生成的门级网表中,返回电路 仿真阶段进行再仿真。最终仿真结果生成的网表称为物理网表。

12、请简述一下设计后端的整个流程?(仕兰微面试题目)

13、是否接触过自动布局布线?请说出一两种工具软件。自动布局布线需要哪些 基本元 素?(仕兰微面试题目)

14、描述你对集成电路工艺的认识。(仕兰微面试题目)

15、列举几种集成电路典型工艺。工艺上常提到0.25,0.18指的是什么?(仕兰微 面试题 目)

16、请描述一下国内的工艺现状。(仕兰微面试题目)

17、半导体工艺中,掺杂有哪几种方式?(仕兰微面试题目)

18、描述CMOS电路中闩锁效应产生的过程及最后的结果?(仕兰微面试题目)

19、解释latch-up现象和Antenna effect和其预防措施.(未知)

20、什么叫Latchup?(科广试题)

21、什么叫窄沟效应? (科广试题)

22、什么是NMOS、PMOS、CMOS?什么是增强型、耗尽型?什么是PNP、NPN?他们 有什么差

别?(仕兰微面试题目)

23、硅栅COMS工艺中N阱中做的是P管还是N管,N阱的阱电位的连接有什么要求? (仕兰微

面试题目)

24、画出CMOS晶体管的CROSS-OVER图(应该是纵剖面图),给出所有可能的传输 特性和转

移特性。(Infineon笔试试题)

25、以interver为例,写出N阱CMOS的process流程,并画出剖面图。(科广试题)

26、Please explain how we describe the resistance in semiconductor. Compare

the resistance of a metal,poly and diffusion in tranditional CMOS process.(威

盛笔试题circuit design-beijing-03.11.09)

27、说明mos一半工作在什么区。(凹凸的题目和面试)

28、画p-bulk 的nmos截面图。(凹凸的题目和面试)

29、写schematic note(?),越多越好。(凹凸的题目和面试)

30、寄生效应在ic设计中怎样加以克服和利用。(未知)

31、太底层的MOS管物理特性感觉一般不大会作为笔试面试题,因为全是微电子物 理,公

式推导太罗索,除非面试出题的是个老学究。IC设计的话需要熟悉的软件: Cadence,

Synopsys, Avant,UNIX当然也要大概会操作。

32、unix 命令cp -r, rm,uname。(扬智电子笔试) _______________________________________________________________________ ____

单片机、MCU、计算机原理

1、简单描述一个单片机系统的主要组成模块,并说明各模块之间的数据流流向和 控制流

流向。简述单片机应用系统的设计原则。(仕兰微面试题目)

2、画出8031与2716(2K*8ROM)的连线图,要求采用三-八译码器,8031的 P2.5,P2.4和

P2.3参加译码,基本地址范围为3000H-3FFFH。该2716有没有重叠地址?根据是什 么?若

有,则写出每片2716的重叠地址范围。(仕兰微面试题目)

3、用8051设计一个带一个8*16键盘加驱动八个数码管(共阳)的原理图。(仕兰 微面试

题目)

4、PCI总线的含义是什么?PCI总线的主要特点是什么?(仕兰微面试题目)

5、中断的概念?简述中断的过程。(仕兰微面试题目)

6、如单片机中断几个/类型,编中断程序注意什么问题;(未知)

7、要用一个开环脉冲调速系统来控制直流电动机的转速,程序由8051完成。简单 原理如

下:由P3.4输出脉冲的占空比来控制转速,占空比越大,转速越快;而占空比由 K7-K0八

个开关来设置,直接与P1口相连(开关拨到下方时为"0",拨到上方时为"1",组 成一个八

位二进制数N),要求占空比为N/256。 (仕兰微面试题目)

下面程序用计数法来实现这一功能,请将空余部分添完整。

MOV P1,#0FFH

LOOP1 :MOV R4,#0FFH

--------

MOV R3,#00H

LOOP2 :MOV A,P1

--------

SUBB A,R3

JNZ SKP1

--------

SKP1:MOV C,70H

MOV P3.4,C

ACALL DELAY :此延时子程序略

--------

--------

AJMP LOOP1

8、单片机上电后没有运转,首先要检查什么?(东信笔试题)

9、What is PC Chipset? (扬智电子笔试)

芯片组(Chipset)是主板的核心组成部分,按照在主板上的排列位置的不同,通 常分为

北桥芯片和南桥芯片。北桥芯片提供对CPU的类型和主频、内存的类型和最大容量 、

ISA/PCI/AGP插槽、ECC纠错等支持。南桥芯片则提供对KBC(键盘控制器)、RTC (实时时

钟控制器)、USB(通用串行总线)、Ultra DMA/33(66)EIDE数据传输方式和ACPI (高级

能源管理)等的支持。其中北桥芯片起着主导性的作用,也称为主桥(Host Bridge)。

除了最通用的南北桥结构外,目前芯片组正向更高级的加速集线架构发展, Intel的

8xx系列芯片组就是这类芯片组的代表,它将一些子系统如IDE接口、音效、MODEM 和USB直

接接入主芯片,能够提供比PCI总线宽一倍的带宽,达到了266MB/s。

10、如果简历上还说做过cpu之类,就会问到诸如cpu如何工作,流水线之类的 问题。

(未知)

11、计算机的基本组成部分及其各自的作用。(东信笔试题)

12、请画出微机接口电路中,典型的输入设备与微机接口逻辑示意图(数据接口 、控制接

口、所存器/缓冲器)。 (汉王笔试)

13、cache的主要部分什么的。(威盛VIA .11.06 上海笔试试题)

14、同步异步传输的差异(未知)

15、串行通信与同步通信异同,特点,比较。(华为面试题)

16、RS232c高电平脉冲对应的TTL逻辑是?(负逻辑?) (华为面试题) _______________________________________________________________________ ____

信号与系统

1、的话音频率一般为300~3400HZ,若对其采样且使信号不失真,其最小的采样频 率应为

多大?若采用8KHZ的采样频率,并采用8bit的PCM编码,则存储一秒钟的信号数据 量有多

大?(仕兰微面试题目)

2、什么耐奎斯特定律,怎么由模拟信号转为数字信号。(华为面试题)

3、如果模拟信号的带宽为 5khz,要用8K的采样率,怎么办? (lucent) 两路?

4、信号与系统:在时域与频域关系。(华为面试题)

5、给出时域信号,求其直流分量。(未知)

6、给出一时域信号,要求(1)写出频率分量,(2)写出其傅立叶变换级数;( 3)当波

形经过低通滤波器滤掉高次谐波而只保留一次谐波时,画出滤波后的输出波形。 (未知)

7、sketch 连续正弦信号和连续矩形波(都有图)的傅立叶变换。(Infineon笔试 试题)

8、拉氏变换和傅立叶变换的表达式及联系。(新太硬件面题) _______________________________________________________________________ __

DSP、嵌入式、软件等

1、请用方框图描述一个你熟悉的实用数字信号处理系统,并做简要的分析;如果 没有,

也可以自己设计一个简单的数字信号处理系统,并描述其功能及用途。(仕兰微 面试题

目)

2、数字滤波器的分类和结构特点。(仕兰微面试题目)

3、IIR,FIR滤波器的异同。(新太硬件面题)

4、拉氏变换与Z变换公式等类似东西,随便翻翻书把如.h(n)=-a*h(n-1)+b*δ(n) a.求h

(n)的z变换;b.问该系统是否为稳定系统;c.写出FIR数字滤波器的差分方程;( 未知)

5、DSP和通用处理器在结构上有什么不同,请简要画出你熟悉的一种DSP结构图。 (信威

dsp软件面试题)

6、说说定点DSP和浮点DSP的定义(或者说出他们的区别)(信威dsp软件面试题 )

7、说说你对循环寻址和位反序寻址的理解.(信威dsp软件面试题)

8、请写出【-8,7】的二进制补码,和二进制偏置码。用Q15表示出0.5和-0.5. (信威

dsp软件面试题)

9、DSP的结构(哈佛结构);(未知)

10、嵌入式处理器类型(如ARM),操作系统种类(Vxworks,ucos,winCE,linux), 操作系

统方面偏CS方向了,在CS篇里面讲了;(未知)

11、有一个LDO芯片将用于对手机供电,需要你对他进行评估,你将如何设计你的 测试项

目?

12、某程序在一个嵌入式系统(200M CPU,50M SDRAM)中已经最优化了,换到零 一个系

统(300M CPU,50M SDRAM)中是否还需要优化?(Intel)

13、请简要描述HUFFMAN编码的基本原理及其基本的实现方法。(仕兰微面试题目 )

14、说出OSI七层网络协议中的四层(任意四层)。(仕兰微面试题目)

15、A) (仕兰微面试题目)

#i nclude

void testf(int*p)

{

*p+=1;

}

main()

{

int *n,m[2];

n=m;

m[0]=1;

m[1]=8;

testf(n);

printf("Data value is %d ",*n);

}

------------------------------

B)

#i nclude

void testf(int**p)

{

*p+=1;

}

main()

{int *n,m[2];

n=m;

m[0]=1;

m[1]=8;

testf(&n);

printf(Data value is %d",*n);

}

下面的结果是程序A还是程序B的?

Data value is 8

那么另一段程序的结果是什么?

16、那种排序方法最快? (华为面试题)

17、写出两个排序算法,问哪个好?(威盛)

18、编一个简单的求n!的程序。(Infineon笔试试题)

19、用一种编程语言写n!的算法。(威盛VIA .11.06 上海笔试试题)

20、用C语言写一个递归算法求N!;(华为面试题)

21、给一个C的函数,关于字符串和数组,找出错误;(华为面试题)

22、防火墙是怎么实现的? (华为面试题)

23、你对哪方面编程熟悉?(华为面试题)

24、冒泡排序的原理。(新太硬件面题)

25、操作系统的功能。(新太硬件面题)

26、学过的计算机语言及开发的系统。(新太硬件面题)

27、一个农夫发现围成正方形的围栏比长方形的节省4个木桩但是面积一样.羊的 数目和正方形围栏的桩子的个数一样但是小于36,问有多少羊?(威盛)

28、C语言实现统计某个cell在某.v文件调用的次数(这个题目真bt) (威盛VIA

.11.06 上海笔试试题)

29、用C语言写一段控制手机中马达振子的驱动程序。(威胜)

30、用perl或TCL/Tk实现一段字符串识别和比较的程序。(未知)

31、给出一个堆栈的结构,求中断后显示结果,主要是考堆栈压入返回地址存放 在低端地 址还是高端。(未知)

32、一些DOS命令,如显示文件,拷贝,删除。(未知)

33、设计一个类,使得该类任何形式的派生类无论怎么定义和实现,都无法产生 任何对象 实例。(IBM)

34、What is pre-emption? (Intel)

35、What is the state of a process if a resource is not available? (Intel)

36、三个 float a,b,c;问值(a+b)+c==(b+a)+c, (a+b)+c==(a+c)+b。(Intel)

37、把一个链表反向填空。 (lucent)

38、x^4+a*x^3+x^2+c*x+d 最少需要做几次乘法? (Dephi) _______________________________________________________________________ _____

主观题

1、你认为你从事研发工作有哪些特点?(仕兰微面试题目)

2、说出你的最大弱点及改进方法。(威盛VIA .11.06 上海笔试试题)

3、说出你的理想。说出你想达到的目标。题目是英文出的,要用英文回答。( 威盛VIA .11.06 上海笔试试题) 4、我们将研发人员分为若干研究方向,对协议和算法理解(主要应用在网络通信 、图象语音压缩方面)、电子系统方案的研究、用MCU、DSP编程实现电路功能、 用ASIC设计技术设计电路(包括MCU、DSP本身)、电路功能模块设计(包括模拟 电路和数字电路)、集成电路后端设计(主要是指综合及自动布局布线技术)、 集成电路设计与工艺接口的研究。 你希望从事哪方面的研究?(可以选择多个方向。另外,已经从事过相关研发的 人员可以详细描述你的研发经历)。(仕兰微面试题目) 5、请谈谈对一个系统设计的总体思路。针对这个思路,你觉得应该具备哪些方面 的知 识?(仕兰微面试题目) 6、设想你将设计完成一个电子电路方案。请简述用EDA软件(如PROTEL)进行设 计(包括原理图和PCB图)到调试出样机的整个过程。在各环节应注意哪些问题 ?电源的稳定,电容的选取,以及布局的大小。(汉王笔试) 共同的注意点 1.一般情况下,面试官主要根据你的简历提问,所以一定要对自己负责,把简历 上的东西搞明白; 2.个别招聘针对性特别强,就招目前他们确的方向的人,这种情况下,就要投其 所好,尽 量介绍其所关心的东西。 3.其实技术面试并不难,但是由于很多东西都忘掉了,才觉得有些难。所以最好 在面试前 把该看的书看看。 4.虽然说技术面试是实力的较量与体现,但是不可否认,由于不用面试官/公司所 专领域及爱好不同,也有面试也有很大的偶然性,需要冷静对待。不能因为被拒 ,就否认自己或 责骂公司。 5.面试时要take it easy,对越是自己钟情的公司越要这样。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。