导航:首页 > 源码编译 > 龙芯2000gdb程序源码

龙芯2000gdb程序源码

发布时间:2022-11-06 00:34:44

1. 龙芯cpu有哪些特点

独具一格。
与 Intel 的 CPU,明显不同。

2. 龙芯是什么

龙芯CPU不同于我们常用的CPU,它属于RISC处理器。
而常见的Inter和AMD的属于CISC处理器。
但IBM的POWER GX处理器就是RISC。
所以原先的苹果机上无法运行windows。
同样的龙芯上也无法运行windows。
具体的两种处理器的区别如下:

复杂指令集CPU内部为将较复杂的指令译码,也就是指令较长,分成几个微指令去执行,正是如此开发程序比较容易(指令多的缘故),但是由于指令复杂,执行工作效率较差,处理数据速度较慢,PC 中 Pentium的结构都为CISC CPU。
RISC是精简指令集CPU,指令位数较短,内部还有快速处理指令的电路,使得指令的译码与数据的处理较快,所以执行效率比CISC高,不过,必须经过编译程序的处理,才能发挥它的效率,我所知道的IBM的 Power PC为RISC CPU的结构,CISCO 的CPU也是RISC的结构。
咱们经常见到的PC中的CPU,Pentium-Pro(P6)、Pentium-II,Cyrix的M1、M2、AMD的K5、K6实际上是改进了的CISC,也可以说是结合了CISC和RISC的部分优点。

RISC与CISC的主要特征对比

比较内容 CISC RISC
指令系统 复杂,庞大 简单,精简
指令数目 一般大于200 一般小于100
指令格式 一般大于4 一般小于4
寻址方式 一般大于4 一般小于4
指令字长 不固定 等长
可访存指令 不加限制 只有LOAD/STORE指令
各种指令使用频率 相差很大 相差不大
各种指令执行时间 相差很大 绝大多数在一个周期内完成
优化编译实现 很难 较容易
程序源代码长度 较短 较长
控制器实现方式 绝大多数为微程序控制 绝大多数为硬布线控制
软件系统开发时间 较短 较长

所以两种处理器的架构不同无法直接相比,
但现在的龙芯的处理水平已经可以和初期P4相比了。
因为上面无法运行windows且速度上无法与主流处理器相比,所以市场上没有针对个人用户出售龙芯的。

龙芯

龙芯(英语:GODSON)是中国科学院自主开发的通用CPU,采用简单指令集,类似于MIPS指令集。第一型的速度是266MHz,最早在2002年开始使用,龙芯2号第二型为500MHz,第三型的目标在1GHz。

关连
“龙芯2号”处理器,也称“Godson-2”处理器、“狗剩2号”处理器、“毛泽东110”处理器、“MZD110”处理器,其中“MZD”是取自“毛泽东”以英文发音时的三个开头字母。

大记事
“十五”期间,国家863计划提出了自主研发CPU的战略思路。
2001年3月起,中国科学院计算技术研究所正式启动处理器设计项目。
2001年3月,中科院计算技术研究所开始研制具有中国自主知识产权的高性能通用CPU芯片,被命名为“龙芯”。项目领导是中科院计算所所长李国杰,具体技术主管是研究院胡伟武。
2001年10月 龙芯的FPGA验证成功,通过中国科学院主持的“龙芯(Godson)CPU设计与验证系统”项目评审。
2002年6月 “龙芯1号”CPU研制成功。
2002年7月 “龙芯1号”CPU小批量投片成功。
2002年9月28日中科院计算技术研究所和北京神州龙芯集成电路设计有限公司联合发布新闻,宣布“具有自主知识产权的我国第一款高性能通用CPU—“龙芯1号”研制成功。从此,中国信息产业“无芯”时代宣告结束。
2002年8月6日 由中国科学院计算技术研究所和江苏综艺集团等合资组建的“ 北京神州龙芯集成电路设计有限公司”正式成立。
2005年2月18日,龙芯2号处理器正式面世,鉴定委员会认为,这款芯片的总体性能已经达到2000年左右的国际先进水平,相当于中档的“奔腾三”处理器。
2006年9月13日,“64位龙芯2号增强型处理器芯片设计”(简称龙芯2E)通过科技部验收,该处理器最高主频达到1.0GHz,实测性能超过1.5GHz奔腾IV处理器的水平。同日,其成果“龙芯2号增强型处理器”通过了科技成果鉴定。

3. linux怎么配置gdb调试器怎么设置显示所有代码

课程安排课程简介第一周 嵌入式C语言编程基础 主要介绍在嵌入式开发编程中C语言的重要概念和编程技巧中的重点难点,以复习串讲和实例分析的形式,重点介绍包括函数与程序结构,指针、数组和链表,库函数的使用等知识。第二周 Linux 操作和编程基础 主要介绍 Linux 的基本命令和基础编程知识,包括Linux的文件操作和目录操作命令,VI编辑器,GCC编译器,GDB调试器和 Make 项目管理工具等知识。第三周 Linux 上C 强化编程训练 主要包括整数算法训练,递归和栈编程训练,位操作训练,指针训练,字符串训练和常用C库函数编程接口实践,强化学员对Linux下基本编程开发的理解和编码调试的能力。第四-七周 Linux环境高级编程及项目开发编程实践 主要包括系统编程(信号/系统调用/管道/FIFO/消息队列/共享内存等),文件I/O编程(文件描述符/文件读写接口/原子操作/阻塞与非阻塞IO等),多任务和多线程编程(进程标识/用户标识/fork与vfork/多线程概念/线程同步等),网络编程(网络基本概念/套接口编程/网络字节次序/ Client/Server 结构/ UDP 编程);掌握Linux下Socket编程的开发流程,熟悉网络编程的调用接口函数和相关数据结构,使学员初步具备在Linux上进行系统编程开发的能力。同时综合之前所学内容和编程技术,以小组为单位进行一个团队合作项目的开发,考核内容包括文件I/O编程,多线程编程,网络编程和项目文档编写。期中考试第八-九周 嵌入式处理器体系结构及编程实践 主要介绍 ARM、MIPS、PowerPC等体系结构及其基本编程知识,包括指令分类,寻址方式、指令集、存储系统、异常中断处理、汇编语言以及C\C++和汇编语言的混合编程等知识。同时结合ARM嵌入式开发板硬件设计原理和基本硬件设计流程,分析各种外设的工作原理和驱动机制,并自己动手实践完成一个ARM开发板上的编程大作业。第十-十一周 嵌入式Linux开发基础及高级应用 主要介绍嵌入式 Linux 开发应用程序的基本流程和知识,包括嵌入式Linux基本概念和开发流程、Bootloader 工作原理、内核裁减配置和交叉编译、根文件系统制作、网络编程及图形界面和数据库开发等知识。同时独立完成一个基于嵌入式Linux GUI的应用编程大作业。第十二-十三周 嵌入式 Linux驱动理论及驱动程序开发实践 主要介绍嵌入式 Linux 上驱动程序开发规范,包括设备驱动程序概念、字符设备驱动程序、块设备与网络设备、网卡驱动以及常用嵌入式设备驱动开发等知识。同时独立实现两种嵌入式设备驱动程序的编写,包括驱动模块的调试和加载以及完整的项目开发文档的编写。第十四-十五周 嵌入式Linux项目团队开发实践锻炼 主要包括设计并实现一个真实和完整的嵌入式项目的开发流程,涉及到数据采集、网络通讯、图形用户界面显示以及嵌入式数据库存储系统等多种嵌入式Linux编程技术。要求学员建立起团队开发和协同工作的企业项目开发模式的概念和流程,强化学员对编写项目概要设计文档和详细设计文档的理解,为就业前的职业技能和素质训练做好充分准备。毕业典礼培训目标学习内容掌握程度掌握三种编程语言C 语言精通 C++ 语言 了解 ARM 汇编语言 熟悉 掌握两种嵌入式Linux操作系统Linux精通 uCLinux精通 掌握两种嵌入式实时操作系统VxWorks 熟悉 uC/OS-II 熟悉 掌握三种处理器体系结构ARM 体系结构精通 MIPS 体系结构 熟悉 PowerPC 了解掌握五种ARM核处理器Samsung S3C2410/S3C44B0精通 Intel XScale PXA255精通 Philips LPC22xx精通 EP7312 熟悉 MIPS Godson 龙芯 熟悉 掌握两种硬件设计工具Candence PCB 熟悉 Protel 了解掌握两种Linux下编辑软件VI精通 EMACS 了解掌握两种串口通讯工具超级终端 (Windows) 熟悉 MiniCOM (Linux) 熟悉 掌握三种 Flash 烧写工具Flash Programmer (GUI) 熟悉 JFlash 烧写软件及原理精通 SJF系列烧写软件及原理精通 掌握两种调试工具JTAG 在线调试器 熟悉 SkyEye 仿真调试工具 熟悉 掌握两种集成开发环境ARM ADS 1.2精通 K-Develop IDE 熟悉 掌握一种源代码版本管理工具CVS 熟悉 掌握嵌入式 Linux整体开发流程 熟悉 GNU 交叉编译器使用Cross-compiler-gcc/g++精通 Linux Makefile 组织结构精通 Bootloader 启动代码u-Boot精通 RedBoot 熟悉 内核编译配置参数设置精通 内核调试 熟悉 文件系统JFFS2 文件系统精通 NFS 文件系统精通 ROMFS 文件系统精通 EXT2 文件系统 熟悉 YAFF 文件系统 了解设备驱动程序液晶LCD 设备驱动精通 USB设备驱动精通 网卡设备驱动精通 嵌入式图形系统MiniGUI精通 QT/Embedded 熟悉 MicroWIN 了解嵌入式数据库系统SQLLite精通 嵌入式应用程序开发网络通讯应用开发精通 数据库存储应用开发 熟悉 多媒体应用开发 熟悉 图形用户界面开发精通 Shell 编程技巧 熟悉 【说明】 精通 ―― 表明对于所学内容和工具的原理进行过深入分析,了解相关内容实现的具体技术细节,并掌握 了相关工具的高级使用技巧。 熟悉 ―― 表明对于所学内容和工具能够融会贯通,掌握相关内容的基本概念,并能够熟练使用相关工具 的常用技巧。 了解 ―― 表明对于所学内容和工具一般了解,能够区别相关内容在概念上的异同,并能够初步使用相关工具。

4. 龙芯的龙芯片系列

(英文名称Godson-1)
龙芯一号CPU IP核是兼顾通用及嵌入式CPU特点的32位处理器内核,采用类MIPS III指令集,具有七级流水线、32位整数单元和64位浮点单元。龙芯一号CPU IP核具有高度灵活的可配置性,方便集成的各种标准接口。图1显示了龙芯一号CPU IP核可配置结构,其中虚线部分表示用户可根据自己的需求进行选择配置,从而定制出最适合用户应用的处理器结构。主要的可配置模块包括:浮点部件、多媒体部件、内存管理、Cache、协处理器接口。浮点部件完全兼容MIPS的浮点指令集合,浮点部件及其相关的系统软件完全符合ANSI/IEEE 754-1985二进制浮点运算标准。浮点部件主要包括浮点ALU部件和浮点乘法/除法部件,用户可根据自己的实际应用选择是否添加。媒体部件复用了MIPS浮点指令的Format域,并复用了浮点寄存器堆,媒体指令集基本对应了Intel SSE媒体指令集合的各种操作。
内存管理部件有三种工作模式,即标准模式、直接映射模式和无映射模式。在标准模式下,TLB分为ITLB和DTLB两部分,每部分均由48项页表项组成,同时支持mapped和unmapped的从虚拟地址到物理地址的变换方式;TLB也可只进行直接映射,不使用CAM和RAM,以减小面积;而无映射模式下甚至可以去掉TLB,采用直连SRAM的形式实现访存。龙芯一号CPU IP核的Cache分为指令Cache和数据Cache,两部分独立配置,以4K为一路,可配置为4路、2路和0路。用户可根据应用需要,确定所需Cache的大小,甚至不使用Cache。协处理器接口为外部协处理器提供了一个高效率的接口。龙芯一号CPU IP核提供了两套可配置的处理器总线接口:AMBA接口和哈佛结构SRAM接口。 (英文名称Godson-2)
龙芯二号CPU 采用先进的四发射超标量超流水结构,片内一级指令和数据高速缓存各64KB,片外二级高速缓存最多可达8MB.最高频率为1000MHz,功耗为3-5瓦,远远低于国外同类芯片,其SPEC CPU2000测试程序的实测性能是1.3GHz的威盛处理器的2-3倍,已达到中等Pentium4水平。 (英文名称Godson-3)
龙芯3A的工作频率为900MHz~1GHz,功耗约15W,频率为1GHz时双精度浮点运算速度峰值达到每秒160亿次,单精度浮点运算速度峰值每秒320亿次。龙芯3A采用意法半导体公司(STMicro)65纳米CMOS工艺生产,晶体管数目达4.25亿个,芯片采用BGA封装,引脚的数目为1121个,功耗小于15瓦。 龙芯3A集成了四个64位超标量处理器核、4MB的二级Cache、两个DDR2/3内存控制器、两个高性能HyperTransport控制器、一个PCI/PCIX控制器以及LPC、SPI、UART、GPIO等低速I/O控制器。龙芯3A的指令系统与MIPS64兼容并通过指令扩展支持X86二进制翻译。

5. 龙芯处理器采用了什么 基础架构

龙芯CPU不同于我们常用的CPU,它属于RISC处理器。 而常见的Inter和AMD的属于CISC处理器。 但IBM的POWER GX处理器就是RISC。 所以原先的苹果机上无法运行windows。 同样的龙芯上也无法运行windows。 具体的两种处理器的区别如下: 复杂指令集CPU内部为将较复杂的指令译码,也就是指令较长,分成几个微指令去执行,正是如此开发程序比较容易(指令多的缘故),但是由于指令复杂,执行工作效率较差,处理数据速度较慢,PC 中 Pentium的结构都为CISC CPU。 RISC是精简指令集CPU,指令位数较短,内部还有快速处理指令的电路,使得指令的译码与数据的处理较快,所以执行效率比CISC高,不过,必须经过编译程序的处理,才能发挥它的效率,我所知道的IBM的 Power PC为RISC CPU的结构,CISCO 的CPU也是RISC的结构。 咱们经常见到的PC中的CPU,Pentium-Pro(P6)、Pentium-II,Cyrix的M1、M2、AMD的K5、K6实际上是改进了的CISC,也可以说是结合了CISC和RISC的部分优点。 RISC与CISC的主要特征对比 比较内容 CISC RISC 指令系统 复杂,庞大 简单,精简 指令数目 一般大于200 一般小于100 指令格式 一般大于4 一般小于4 寻址方式 一般大于4 一般小于4 指令字长 不固定 等长 可访存指令 不加限制 只有LOAD/STORE指令 各种指令使用频率 相差很大 相差不大 各种指令执行时间 相差很大 绝大多数在一个周期内完成 优化编译实现 很难 较容易 程序源代码长度 较短 较长 控制器实现方式 绝大多数为微程序控制 绝大多数为硬布线控制 软件系统开发时间 较短 较长 所以两种处理器的架构不同无法直接相比, 但现在的龙芯的处理水平已经可以和初期P4相比了。 因为上面无法运行windows且速度上无法与主流处理器相比,所以市场上没有针对个人用户出售龙芯的。 龙芯 龙芯(英语:GODSON)是中国科学院自主开发的通用CPU,采用简单指令集,类似于MIPS指令集。第一型的速度是266MHz,最早在2002年开始使用,龙芯2号第二型为500MHz,第三型的目标在1GHz。 关连 “龙芯2号”处理器,也称“Godson-2”处理器、“狗剩2号”处理器、“毛泽东110”处理器、“MZD110”处理器,其中“MZD”是取自“毛泽东”以英文发音时的三个开头字母。 大记事 “十五”期间,国家863计划提出了自主研发CPU的战略思路。 2001年3月起,中国科学院计算技术研究所正式启动处理器设计项目。 2001年3月,中科院计算技术研究所开始研制具有中国自主知识产权的高性能通用CPU芯片,被命名为“龙芯”。项目领导是中科院计算所所长李国杰,具体技术主管是研究院胡伟武。 2001年10月 龙芯的FPGA验证成功,通过中国科学院主持的“龙芯(Godson)CPU设计与验证系统”项目评审。 2002年6月 “龙芯1号”CPU研制成功。 2002年7月 “龙芯1号”CPU小批量投片成功。 2002年9月28日中科院计算技术研究所和北京神州龙芯集成电路设计有限公司发布新闻,宣布“具有自主知识产权的我国第一款高性能通用CPU—“龙芯1号”研制成功。从此,中国信息产业“无芯”时代宣告结束。 2002年8月6日 由中国科学院计算技术研究所和江苏综艺集团等合资组建的“ 北京神州龙芯集成电路设计有限公司”正式成立。 2005年2月18日,龙芯2号处理器正式面世,鉴定委员会认为,这款芯片的总体性能已经达到2000年左右的国际先进水平,相当于中档的“奔腾三”处理器。 2006年9月13日,“64位龙芯2号增强型处理器芯片设计”(简称龙芯2E)通过科技部验收,该处理器最高主频达到1.0GHz,实测性能超过1.5GHz奔腾IV处理器的水平。同日,其成果“龙芯2号增强型处理器”通过了科技成果鉴定。

6. 解释下龙芯

关于CPU和芯片,我们标准的操作系统,大约有350个C函数,这种操作系统叫标准的操作系统,IEEE

POSIX这就是标准操作系统的规范,但是事实上,美国很多军方的CPU和工控,飞机制造和武器工业控制领域很多芯片是不支持这个标准的,比如军队的OpenRISC派系的芯片,只能支持大约100~150个标准C函数,当然了,剩下的200多个函数可以使用这个100多个函数来用软件来实现,但是,这些用软件实现的库和函数,运行速度相当的慢。
实际上mips就是当年早期OpenRISC商业化的产物,但是Mips走的更远,主要解决大规模并行的浮点数运算问题。mips是支持linux操作系统的,但是这个CPU只能顺利的运行大约150个标准的操作系统的C函数。
现在C++标准库STL一共又20个大类,超过了1000个函数或者模板实现,而boost库(STL的升级版)有超过2000个复杂函数或者模板实现,这些函数如果在intel或者AMD的芯片上执行得到的结果,跟在arm上执行得到的结果很多都是不同的,尤其是执行效率问题,很多在arm上慢的要死,比java还要慢(现在安卓机主要使用java开发应用软件,编译器是使用J2SDK修改的编译器)。苹果公司在这方面有比较深入的研究。这个不细谈。
如果这个C++函数在mips芯片上执行,这里面有一多半是根本无法执行的,也就是说,会崩溃和异常退出。并且,J2SDK也是无法在mips上顺利的执行的,相当的垃圾的一个芯片。
这就是为啥在美国9年代末期,mips被市场淘汰的根本原因。

7. 龙芯CPU适用什么

龙芯现在只应用于军事,没有应用于台式机,
笔记本倒有一款是用龙芯的。

龙芯CPU目前达到 奔腾4 2.6 GHz的水平

用龙芯CPU的主板目前不支持微软的系统哦!(XP VISTA 98 2000 ME SERVER 这些微软开发的系统没有一个是 龙芯支持的。)

龙芯只支持LINUX系统。

下一代的龙芯有望使用双核技术,期待吧!!

8. 龙芯CPU和INTEL的相比有什么优缺点

最好的大概相当于P4 2.0G
优点,恐怕只有功耗低这一点了。

9. 为什么龙芯不学习一下OpenSPARC 的源代码

opensparc是在FPGA上实现的IP核吧!
如果龙芯使用的话..估计也会有版权的问题!
就像LINUX一样!
我现在用的SYSLINK的路由器WRT54GS就因为其内核是LINUX!
被黑客发现后SYSLINK被迫公开代源码!
后来网上就出现了像OPENWRT、DD-WRT等等第三方路由软件!
所以估计龙芯使用别人的东西也会有问题!
再说。。这样的话《自主知识产权》的帽子就没了吧!问题很严重哦!

10. 龙芯是什么为什么龙芯的诞生在世界CPU发展史上具有划时代的革命意义

龙芯CPU不同于我们常用的CPU,它属于RISC处理器。
而常见的Inter和AMD的属于CISC处理器。
但IBM的POWER GX处理器就是RISC。
所以原先的苹果机上无法运行windows。
同样的龙芯上也无法运行windows。
具体的两种处理器的区别如下:

复杂指令集CPU内部为将较复杂的指令译码,也就是指令较长,分成几个微指令去执行,正是如此开发程序比较容易(指令多的缘故),但是由于指令复杂,执行工作效率较差,处理数据速度较慢,PC 中 Pentium的结构都为CISC CPU。
RISC是精简指令集CPU,指令位数较短,内部还有快速处理指令的电路,使得指令的译码与数据的处理较快,所以执行效率比CISC高,不过,必须经过编译程序的处理,才能发挥它的效率,我所知道的IBM的 Power PC为RISC CPU的结构,CISCO 的CPU也是RISC的结构。
咱们经常见到的PC中的CPU,Pentium-Pro(P6)、Pentium-II,Cyrix的M1、M2、AMD的K5、K6实际上是改进了的CISC,也可以说是结合了CISC和RISC的部分优点。

RISC与CISC的主要特征对比

比较内容 CISC RISC
指令系统 复杂,庞大 简单,精简
指令数目 一般大于200 一般小于100
指令格式 一般大于4 一般小于4
寻址方式 一般大于4 一般小于4
指令字长 不固定 等长
可访存指令 不加限制 只有LOAD/STORE指令
各种指令使用频率 相差很大 相差不大
各种指令执行时间 相差很大 绝大多数在一个周期内完成
优化编译实现 很难 较容易
程序源代码长度 较短 较长
控制器实现方式 绝大多数为微程序控制 绝大多数为硬布线控制
软件系统开发时间 较短 较长

所以两种处理器的架构不同无法直接相比,
但现在的龙芯的处理水平已经可以和初期P4相比了。
因为上面无法运行windows且速度上无法与主流处理器相比,所以市场上没有针对个人用户出售龙芯的。

龙芯

龙芯(英语:GODSON)是中国科学院自主开发的通用CPU,采用简单指令集,类似于MIPS指令集。第一型的速度是266MHz,最早在2002年开始使用,龙芯2号第二型为500MHz,第三型的目标在1GHz。

关连
“龙芯2号”处理器,也称“Godson-2”处理器、“狗剩2号”处理器、“毛泽东110”处理器、“MZD110”处理器,其中“MZD”是取自“毛泽东”以英文发音时的三个开头字母。

大记事
“十五”期间,国家863计划提出了自主研发CPU的战略思路。
2001年3月起,中国科学院计算技术研究所正式启动处理器设计项目。
2001年3月,中科院计算技术研究所开始研制具有中国自主知识产权的高性能通用CPU芯片,被命名为“龙芯”。项目领导是中科院计算所所长李国杰,具体技术主管是研究院胡伟武。
2001年10月 龙芯的FPGA验证成功,通过中国科学院主持的“龙芯(Godson)CPU设计与验证系统”项目评审。
2002年6月 “龙芯1号”CPU研制成功。
2002年7月 “龙芯1号”CPU小批量投片成功。
2002年9月28日中科院计算技术研究所和北京神州龙芯集成电路设计有限公司联合发布新闻,宣布“具有自主知识产权的我国第一款高性能通用CPU—“龙芯1号”研制成功。从此,中国信息产业“无芯”时代宣告结束。
2002年8月6日 由中国科学院计算技术研究所和江苏综艺集团等合资组建的“ 北京神州龙芯集成电路设计有限公司”正式成立。
2005年2月18日,龙芯2号处理器正式面世,鉴定委员会认为,这款芯片的总体性能已经达到2000年左右的国际先进水平,相当于中档的“奔腾三”处理器。
2006年9月13日,“64位龙芯2号增强型处理器芯片设计”(简称龙芯2E)通过科技部验收,该处理器最高主频达到1.0GHz,实测性能超过1.5GHz奔腾IV处理器的水平。同日,其成果“龙芯2号增强型处理器”通过了科技成果鉴定。

阅读全文

与龙芯2000gdb程序源码相关的资料

热点内容
说明wpf加密过程 浏览:142
java读取list 浏览:701
iis7gzip压缩 浏览:39
有什么安卓机打吃鸡好 浏览:597
三星u盘加密狗 浏览:473
php函数的返回值吗 浏览:586
国企稳定程序员 浏览:327
编程猫如何使用教程视频 浏览:218
安卓远端网页如何打日志 浏览:218
压缩flash大小 浏览:993
解压的玩具教程可爱版 浏览:366
哪个求职app比较靠谱 浏览:888
java的读法 浏览:59
nod32局域网服务器地址 浏览:1002
数码科技解压 浏览:235
新网的云服务器管理界面复杂吗 浏览:367
无人声解压强迫症视频 浏览:571
计算机编译运行 浏览:639
单片机嵌套 浏览:988
python字符串中符号 浏览:787