aben1223
驱动小牛
驱动小牛
  • 注册日期2004-11-29
  • 最后登录2007-06-01
  • 粉丝1
  • 关注0
  • 积分1000分
  • 威望201点
  • 贡献值0点
  • 好评度192点
  • 原创分2分
  • 专家分0分
阅读:1144回复:2

请教请教:)高手帮帮忙嘛。

楼主#
更多 发布于:2004-12-01 21:34
下面是关于我所知道的硬件具体信息和我要开发的要求。
要求:导师接这个项目的时候,项目要求开发的硬件有一个实现TCP/IP
的驱成。至于怎么证明这块板子支持TCP/IP呢,我导师的想法是就是用
我们开发的板子两块,一台插一个。中间用光纤相联。然后我在这个硬件
上开发一个驱成,安装好以后。Windows 2000就认为这是一块网卡了。
然后嘛这两台机子就可以实现所有网卡的基本功能(譬如可以相互访问拉,等等)。
我导师其实不太懂的,在驱成方面更是不懂。他就是有这个想法,逼着我去实现。
......
......
硬件:我的其他同学正在开发中,用的是FPGA。
这块板子是PCI插槽。接口由光纤联系。在硬件的介绍上,就是有人
用Verliog的语言开发一个FPGA。发送数据时我往一个register地址写数据,
然后硬件自动将数据写往一个FIFO(其中某个同学实现的),然后
后面的物理传输就是硬件自己实现了。接受时,硬件产生一个中断。我就去接受。
(好像就是这样)

这两天都在看一个叫做楚狂人的NDIS介绍,(在这个板块看到的)
还有Windows 2000驱动程序开发大全的关于NIC的部分。
我想确定几个问题
1.我做的应该是面向无连接的微端口驱成吧。
2.用的方式是Programmed IO方式,在2000下的NDIS5.0。
3.还有是不是我开发了这个驱成,上层软件就不关我的事了,就是说
Windows就把他当作是一块网卡,然后网上邻居就自动添加一个本地连接。就像一块真的网卡一样。然后两台机子就可以相互访问了。
4.还有就是NDIS对硬件有什么要求或规范吗?

下面是关于我所知道的硬件具体信息。

硬件是由其他人实现的(我的两个同学还在开发中),用的是FPGA。两块板子是PCI插槽。中间由光纤联系。
然后导师要求我的驱成要实现TCP/IP协议。就是两台机子,一台机子插一块板子。之间用光纤连接。让人感觉这就是一块网卡,然后还可以设置IP等信息。然后两台机子就可以通讯了。就像插了两张网卡的机子,
在硬件的介绍上,就是有人用Verliog的语言开发一个FPGA。我往一个register地址写数据,然后硬件自动将数据写往一个发送FIFO,其他的
就用硬件自动实现传输。当网络有数据过来的时候,硬件给我一个中断,我就去读接受FIFO的一个regiter地址就可以了。
周维彬
aben1223
驱动小牛
驱动小牛
  • 注册日期2004-11-29
  • 最后登录2007-06-01
  • 粉丝1
  • 关注0
  • 积分1000分
  • 威望201点
  • 贡献值0点
  • 好评度192点
  • 原创分2分
  • 专家分0分
沙发#
发布于:2004-12-01 22:31
看完了一些文档,想看看源代码进行分析。
我认为看再多得书也不如看源代码。
我在DDK的Sample看了一下关于Miniport的无连接介质的
感觉就只有两个,一个是NE2000:
This sample is an NDIS 3 miniport for the Novell 2000 Ethernet Controller.
另一个是E100BEX:
This sample is an NDIS 5 deserialized miniport driver for the
Intel EtherExpressTM PRO/100+ Ethernet PCI adapter and the Intel
 EtherExpressTM PRO/100B PCI adapter. It illustrates NDIS 4 and
NDIS 5 features such as multiple packet sends/receives, media sense,
 WMI, and Power Management.
。。。。。。
然后在DS中也找到几个:WdmVNIC NDIS Miniport Driver:
This directory contains NDIS Miniport Driver project files for the
WdmVNIC NDIS_WDM sample driver.
Vdev NDIS Miniport Driver:
This directory contains NDIS Miniport Driver project files that demonstrate
how NDIS miniports expose a WDM device object named MyNdisDevice.
This device object can be accessed by user mode programs via
 Win32 CreateFile(\\\\.\\MyNdisDevice, ... etc.) as a normal I/O device.
NMNE2K NDIS Miniport Driver
This directory contains NDIS Miniport Driver project files for a NE2000-comp
atible card. This sample demonstrates the basic structure of a standard (ser
ialized) NDIS miniport driver written using the DriverNetWorks C++ framework
. It is a fully functional NDIS miniport driver tested on NT/SP5, Win2K and
WinXP platforms. The driver is functionally similar to the NE2000 sample dri
ver found in the Windows XP DDK and demonstrates usage of the following clas
ses:
E100bex NDIS Miniport Driver:
This directory contains the NDIS Miniport Driver project files for the Intel
 EtherExpress PRO PCI Ethernet Adapter network card. This sample demonstrate
s the basic structure of an NDIS 5 deserialized NDIS miniport driver written
 using the DriverNetworks C++ framework. This is a fully functional NDIS min
iport driver tested on both the Windows 2000 and Windows XP systems. The dri
ver is functionally similar to the E100Bex sample driver found in the Window
s XP DDK.
其中最后两个好像就是DDK的例子转换。
因为现在已经要11点了。准备明天再来研究。
请教一下,又没有漏掉的或者不需要看的阿?
谢谢
会的人说一下
万分感谢:):)
周维彬
yongliliu
驱动小牛
驱动小牛
  • 注册日期2003-10-20
  • 最后登录2007-09-28
  • 粉丝0
  • 关注0
  • 积分11分
  • 威望2点
  • 贡献值0点
  • 好评度1点
  • 原创分0分
  • 专家分0分
板凳#
发布于:2004-12-06 18:55
我个人认为,你只需实现FDDI光纤网卡驱动就行了,因为实现了NDIS就标志着切入了tcp/ip协议栈,应用层的程序绝对不需要你去关心的。记住你需要实现的驱动不是中间层的驱动,而是miniport层的驱动。
成功不是天上掉下来的免费的丰盛的晚餐!
游客

返回顶部