计算机综合课程设计
计算机综合实践教学大纲(3篇)

第1篇一、教学目的与要求1. 教学目的(1)使学生掌握计算机基本理论、基本知识和基本技能,培养具备较强的计算机应用能力。
(2)提高学生的创新意识和实践能力,培养学生具备良好的团队合作精神和职业道德。
(3)使学生了解计算机技术的发展趋势,为今后的学习和工作打下坚实基础。
2. 教学要求(1)学生能够熟练运用计算机操作系统、办公软件、编程语言等基本工具。
(2)学生能够运用所学知识解决实际问题,具备一定的编程能力。
(3)学生能够进行项目设计和实施,具备一定的团队协作能力。
(4)学生能够了解计算机技术的发展趋势,关注新技术、新应用。
二、教学内容1. 计算机基础知识(1)计算机硬件与软件(2)计算机操作系统(3)计算机网络(4)数据库技术2. 办公自动化(1)Microsoft Office办公软件(2)WPS办公软件(3)PowerPoint演示文稿制作(4)Excel数据处理3. 编程语言(1)C语言(2)Java语言(3)Python语言(4)HTML/CSS网页设计4. 项目设计与实施(1)需求分析(2)系统设计(3)编码实现(4)测试与调试(5)项目维护5. 团队协作与沟通(1)团队协作原则(2)沟通技巧(3)项目管理6. 计算机新技术与新应用(1)人工智能(2)大数据(3)云计算(4)物联网三、教学方法与手段1. 讲授法:系统讲解计算机基础知识、编程语言、项目设计与实施等内容。
2. 案例分析法:通过分析实际案例,提高学生的实践能力和创新能力。
3. 实验法:通过实验操作,使学生熟练掌握计算机基本技能。
4. 项目驱动法:通过项目设计与实施,培养学生的团队协作能力和实践能力。
5. 演示法:通过演示,使学生直观地了解新技术和新应用。
6. 网络教学资源:利用网络教学平台,为学生提供丰富的学习资源。
四、教学进度安排1. 计算机基础知识:2周2. 办公自动化:2周3. 编程语言:4周4. 项目设计与实施:4周5. 团队协作与沟通:2周6. 计算机新技术与新应用:2周五、考核方式1. 平时成绩:占总成绩的30%,包括课堂表现、实验报告、作业等。
计算机系统综合课程设计实验总结

计算机系统综合课程设计实验总结一、引言计算机系统综合课程设计实验是计算机科学与技术相关专业的一门重要实践课程,旨在通过实际操作和综合实验任务,让学生全面了解计算机系统的组成和工作原理,培养学生的综合应用能力和问题解决能力。
本文旨在对该实验进行总结和回顾,介绍实验的目的、内容、实施过程和取得的成果。
二、实验目的计算机系统综合课程设计实验的目的是通过设计和实现一个简化的计算机系统,包括处理器、内存、I/O设备等,加深对计算机硬件和软件的理解,培养学生的系统思维和综合应用能力。
通过实验,学生能够掌握计算机系统的基本结构和工作原理,熟悉计算机体系结构、操作系统、编译原理等相关知识,提高自己的实践能力和创新能力。
三、实验内容本次实验的内容主要包括以下几个方面:1. 计算机系统的基本组成:学生需要了解并实现计算机系统的各个部分,包括处理器、内存、I/O设备等,理解它们之间的功能和相互作用关系。
2. 处理器设计与实现:学生需要设计并实现一个简化的处理器,包括指令集、寄存器、控制单元等。
通过设计处理器,学生能够深入理解指令的执行过程和计算机的运行机制。
3. 内存管理和地址映射:学生需要设计并实现一个简化的内存管理系统,包括地址映射、虚拟内存、分页机制等。
通过实现内存管理系统,学生能够理解内存的分配与回收原理,掌握地址映射的方法和技巧。
4. I/O设备的设计与实现:学生需要设计并实现一个简化的I/O设备,包括输入设备和输出设备。
通过设计I/O设备,学生能够了解I/O设备的工作原理和驱动程序的编写方法。
四、实施过程本次实验的实施过程主要包括以下几个阶段:1. 系统设计和规划:在实验开始前,学生需要对整个实验进行系统设计和规划,确定实验的目标、内容和实施方案。
2. 硬件和软件开发:学生根据实验的设计要求,开始进行硬件和软件的开发工作。
他们需要使用相应的开发工具和编程语言,实现计算机系统的各个组成部分。
3. 调试和测试:在开发完成后,学生需要对实验系统进行调试和测试,确保系统的功能和性能达到设计要求。
《计算机系统综合设计》课程设计

xxxx大学计算机科学与技术学院课程设计说明书题目:实验计算机指令的设计(三)课程:计算机系统综合设计院(部):计算机科学与技术学院专业:网络工程班级:网络101班学生姓名: xxx学号: **********指导教师: xxx完成日期: 2013年1月17日目录一、课程设计题目 (4)二、课程设计目的 (4)三、课程设计方案 (4)四、课程设计内容 (4)(一)、硬件资源 (4)1.运算器模块 (4)2.寄存器堆模块 (5)3.指令部件模块 (5)4.内存模块 (5)5.总线缓冲模块 (5)6.微程序控制模块 (5)7.启停和时序模块 (6)8.整机逻辑框图 (6)(二)、设计指令 (8)1、指令操作数寻址方式及其代码 (8)2、指令执行流程 (8)(三)、确定微操作控制信号及其实现方法 (10)1、设计微指令格式 (10)2、微程序控制方式 (10)3、设计实验接线表 (11)4.PLD方程.................................................................................................. 错误!未定义书签。
(四)、指令编码及微程序 . (15)(五)、程序调试 (17)五、结论 (18)六、参考文献 (22)山东建筑大学计算机科学与技术学院课程设计任务书指导教师(签字):教研室主任(签字):一、课程设计题目实验计算机指令的设计(三)二、课程设计目的在学习了专业基础课《计算机组成原理A》和《系统结构》课程的基础上,通过设计简单实验计算机的部分指令,加深对计算机硬件结构和系统软件的认识,初步掌握计算机指令的设计与使用方法。
巩固对“计算机组成原理与系统结构”概念的理解;加深对计算机组成、结构、工作原理、工作过程的理解和认识;提高综合运用所学知识进行系统分析、设计的能力。
三、课程设计方案基于FD-CES实验箱的硬件模块平台,通过PC机和可编程逻辑(PLD)电路实验板,完成简单实验计算机的部分指令的控制信号线的连接、编码、微程序的设计,在FD-CES实验箱的控制台上运行用所设计的指令编写的程序,验证设计指令的正确性。
计算机控制技术综合课程设计方案

计算机控制技术综合课程设计方案清晨的阳光透过窗帘,洒在键盘上,伴随着一杯热咖啡的香气,我开始构思这个“计算机控制技术综合课程设计方案”。
这个方案不仅要体现计算机控制的精髓,还要让学生在实践中掌握核心技能,下面是我的思路。
一、课程目标我们要明确课程目标。
这不仅仅是教会学生一些编程语言和算法,更重要的是让他们理解计算机控制系统的设计理念、工作原理和应用场景。
简单来说,我们要培养的是未来的计算机控制系统设计师。
二、课程内容1.基础理论课程的前半部分,我们会重点讲解计算机控制的基础理论,包括控制系统的基本概念、数学模型、控制器设计等。
这部分内容虽然枯燥,但却是后续实践的基础。
我会用生动的例子和实际应用场景来引导学生,让他们对这些理论产生兴趣。
2.编程实践是编程实践环节。
我们会教授学生如何使用C/C++、Python等编程语言来设计计算机控制系统。
在这个过程中,学生将学会如何将理论应用到实际项目中,如何处理各种复杂问题。
3.硬件接口除了编程,我们还会教授学生如何使用各种硬件接口,如串口、网络接口等。
这部分内容会让学生了解到计算机控制系统与外部设备之间的通信方式,为后续的实践项目打下基础。
4.项目实践在课程的我们会安排一系列项目实践。
这些项目将涵盖不同的应用领域,如智能家居、工业自动化等。
学生将分组进行项目设计,从需求分析、系统设计到编程实现,全方位锻炼自己的能力。
三、教学方法1.案例教学我会采用案例教学的方法,通过分析经典的计算机控制系统案例,让学生理解理论知识在实际中的应用。
同时,案例教学也能激发学生的兴趣,让他们主动参与到课程中来。
2.实践教学实践教学是本课程的核心。
我会安排大量的实验和项目实践,让学生在实践中掌握计算机控制技术的应用。
还会鼓励学生参加各种比赛和项目,提升他们的实际操作能力。
3.互动教学在教学过程中,我会鼓励学生提问和发表自己的观点。
通过互动,我可以及时了解学生的掌握情况,调整教学进度和难度。
《计算机系统综合设计》计算机系统课程设计m

2 系统设计与实现
根据系统需求,设计和 实现计算机系统的各个 模块。
3 系统测试与调试
进行系统测试,并解决 系统中的错误和问题。
课程设计步骤
1
项目选择
选择一个适合的计算机系统设计项目。
需求分析
2
分析系统的需求,并编写需求文档。
3
系统设计
设计计算机系统的结构和模块。
系统实现
4
根据设计,实现系统的各个模块。
5
测试与调试
测试系统,发现并解决问题。
项目总结
6
总结项目经验,提出改进建议。
课程设计评估
笔试成绩
考察学生对计算机系统设计的理解和掌握程度。
项目成果
根据计算机系统设计项目的质量和完成程度进 行评估。
课程设计经验分享
团队合作
分享团队合作的经验和技巧, 以及如何解决合作中的问题。
问题解决
分享解决计算机系统设计中遇 到的问题的方法和心得。
《计算机系统综合设计》 计算机系统课程设计
这是一门重要的计算机系统课程,旨在培养学生设计和实现计算机系统的能 力。本课程将提供综合的设计经验和实践知识,帮助学生成为优秀的计算机 系统工程师。
课程设计目标
综合技术应用
通过设计和实现计算机系 统,提高学生的综合技术 应用能力。
问题解决能力
培养学生分析和解决实际 计算机系统问题的能力。
团队合作精神
通过合作设计项目,培养 学生的团队合作和沟通能 力。
课程设计要求
编程能力
具备扎实的编程基础和良好的 代码风格。
系统架构
理解计算机系统的各个组成部 分和它们之间的交互关系。
问题解决
能够分析和解决复杂的计算机 系统问题。
计算机融合课教学设计案例

计算机融合课教学设计案例引言:计算机融合课程是指将计算机技术与其他学科的知识进行整合和融合,以提高学生的综合能力和创新思维。
在当今信息时代,计算机已经渗透到各个领域,培养学生的计算机应用能力已经成为教育的重要任务。
本篇文档将提供一个计算机融合课教学设计案例,旨在帮助教师更好地设计和实施计算机融合课程,以促进学生的综合素质发展。
一、教学目标本课程的主要教学目标如下:1.了解计算机的基本原理和应用;2.掌握计算机操作系统和常见应用软件的使用方法;3.培养学生的信息获取、处理和表达能力;4.培养学生的合作与沟通能力;5.激发学生对计算机科学的兴趣。
二、教学内容本课程主要包括以下几个方面的内容:1.计算机基础知识:包括计算机的历史、组成结构、工作原理等;2.操作系统和应用软件:介绍主流操作系统和常见应用软件的使用方法;3.计算机网络与通信:介绍计算机网络的基本原理和应用;4.信息安全与网络素养:培养学生的信息安全意识和网络素养。
三、教学方法1.理论讲授:通过教师讲解、多媒体展示等方式,引导学生全面了解计算机的基本原理和应用,掌握相关概念和知识。
2.实践操作:通过实践操作,让学生亲自操作计算机系统和常见应用软件,提高他们的操作和解决问题的能力。
3.小组合作:将学生分为小组,进行小组合作学习,培养学生的合作与沟通能力,并通过小组展示等形式,培养学生的表达能力。
4.课外拓展:鼓励学生积极参与计算机相关的科普活动和比赛,拓宽他们的视野,激发他们对计算机科学的兴趣。
四、教学过程1.引入:通过询问学生对计算机及其应用的认识,激发学生的学习兴趣,并简要介绍计算机融合课程的重要性和学习目标。
2.知识讲解:通过教师的讲解和多媒体展示,讲解计算机的基本原理、操作系统和常见应用软件的使用方法等知识。
3.实践操作:组织学生进行计算机系统和应用软件的实践操作,让他们亲自操作并解决问题,提高他们的操作和解决问题的能力。
4.小组合作:将学生分为小组,让他们共同研究和探讨计算机相关的问题,并通过小组展示等方式,培养他们的表达能力和合作与沟通能力。
计算机综合课程设计大纲

《计算机综合课程设计》大纲一、课程的性质、任务及先修课本课程设计是学生在完成《管理信息系统》课程教学内容之后进行的必修性质的实践教学环节,是整个课程学习的重要组成部分,是巩固和深化教学内容,培养学生理解和掌握信息系统开发基本理论和系统分析与设计方法的重要途径。
该课程设计的教学任务应使学生了解信息系统开发的有关基本概念、基本理论,掌握信息系统分析、设计、开发的一般方法,为信息系统分析与开发提供思路,是对学生运用管理、计算机技术结合交通运输专业知识学习的综合考核和检查。
本课程先修课:数据库应用基础。
二、课时分配三、课程设计内容和基本要求(一)信息系统以及交通运输综述及选题要求:了解信息系统和交通运输的关系,理解信息系统基本概念,了解交通运输在国民经济中的地位和作用,理解信息系统在其中发挥的作用;调查、收集交通运输专业领域中管理信息系统的适用条件、应用案例和发展趋势的资料,为进一步从感性上认识管理信息系统奠定基础,同时便于学生根据自己掌握的资料、数据、知识和条件确定拟开发研制的信息系统。
组织形式:自由结合组成3-5人的课程设计小组,各个小组自己选举产生组长。
选题及其要求:由同学自己选题,可以按照自己熟悉的系统、业务、领域选题,但各组之间的选题原则上不得相同。
建议的选题范围:1、交通运输领域的问题。
提示:如铁路、公路等车站管理、生产作业计划管理、货运、客运管理,交通运输信息发布网站;2、日常工作所接触到的相关管理系统。
提示:介绍你日常工作、学习或生活中常见到的、比较重要的管理系统,从中选择一两个子系统、功能等作为选题。
(二)信息系统分析与设计本部分要求:确定选题之后,理解信息系统应用需求的基本概念、特征,分析应用需求对信息系统开发设计影响的因素,掌握信息系统需求分析的理论、方法;研究确定使用何种开发方式和开发方法进行相关信息系统的开发和设计,采用的开发环境和工具等,组织开发小组的成员进行系统的分析和设计。
计算机课程设计详细设计

计算机课程设计详细设计一、课程目标知识目标:1. 让学生掌握计算机基础知识,包括硬件组成、软件分类及功能;2. 培养学生了解并运用计算机编程语言,如Python,进行基础程序设计;3. 使学生了解计算机网络的基本概念和功能,掌握基本的网络应用。
技能目标:1. 培养学生运用计算机软件进行文字处理、数据处理和演示制作的能力;2. 提高学生运用编程语言解决实际问题的能力;3. 培养学生利用网络资源进行自主学习、协作交流的能力。
情感态度价值观目标:1. 培养学生对计算机科学的兴趣,激发学生的学习热情和探究精神;2. 培养学生具备良好的信息素养,遵循网络道德规范,尊重知识产权;3. 培养学生的团队协作精神,提高沟通与交流能力。
分析课程性质、学生特点和教学要求,本课程将目标分解为以下具体学习成果:1. 学生能够独立完成计算机硬件和软件的安装与配置;2. 学生能够运用Python编程语言编写简单的程序,解决实际问题;3. 学生能够熟练使用办公软件,完成日常学习和工作任务;4. 学生能够掌握基本的网络应用,进行有效的信息检索和资源共享;5. 学生能够在团队项目中发挥积极作用,与他人协作完成项目任务。
二、教学内容根据课程目标,教学内容分为以下四个部分:1. 计算机基础知识- 硬件组成:CPU、内存、硬盘、输入输出设备等;- 软件分类及功能:操作系统、应用软件、编程语言等;- 教材章节:第一章 计算机概述。
2. 计算机编程语言- Python编程基础:变量、数据类型、运算符、控制结构等;- 简单程序设计:顺序结构、选择结构、循环结构等;- 教材章节:第二章 Python编程基础。
3. 计算机网络- 网络基本概念:网络拓扑、协议、IP地址等;- 基本网络应用:浏览器使用、电子邮件、文件传输等;- 教材章节:第三章 计算机网络基础。
4. 办公软件应用- 文字处理:文档编辑、格式设置、排版等;- 数据处理:表格制作、数据计算、图表生成等;- 演示制作:幻灯片制作、动画设计、演示文稿等;- 教材章节:第四章 办公软件应用。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
注意它
2018/12/29 P.7
/people/yangqs/xtzhsj1/Index.aspx
2009年教育部-英特尔精品课程
为MiniSys加I/O功能(6)
具体端口分配
片选信号 LEDCtrl KEYCtrl CTCCtrl PWMCtrl UARTCtrl WDTCtrl
/people/yangqs/xtzhsj1/Index.aspx
2009年教育部-英特尔精品课程
为MiniSys加I/O功能(1)
MiniSys为I/O统一编址方式。 将DATA RAM地址分区,其中高256个 字节用来做IO,一共是128个16位端口。
2018/12/29
P.6
2009年教育部-英特尔精品课程
为MiniSys加I/O功能(5)
增加一个MEMorIO模块
mwdata mAddress
存储 单元
mrdata
译码 单元
运算 单元
Address PortNumber
MEM orIO
Irdata 片选信号
rdata iwdata
wdata
/people/yangqs/xtzhsj1/Index.aspx
首地址 FF00H FF10H FF20H FF30H FF40H FF50H
2018/12/29 P.8
2009年教育部-英特尔精品课程
16位定时/计数器(1)
功能
两个定时/计数器CNT0和CNT1。 具有计数和定时两个功能。 计数方式下可以对输入的外部脉冲进行计数, 当计数到初值寄存器的值的时候,设置状态 寄存器的相应位。 定时方式下,在时钟作用下计时器做减1, 到1的时候设置状态寄存器的相应位,并在 相应的COUT脚输出一个时钟的低电平(平 时COUT是高电平)。 状态寄存器在被读取后被清零。
2018/12/29 P.13
/people/yangqs/xtzhsj1/Index.aspx
2009年教育部-英特尔精品课程
脉冲宽度调制PWM(1)
功能
内部一个16位计数器和一个16位对比值, 计数器周而复始的加1计数,计数到计数器 的最大值(默认为FFFFH)的时候转为0再 计数。当计数器的值大于对比值,输出端 输出低电平,否则输出高电平。 对比值(默认为7FFFH)的不同决定了输 出脉冲的占空比。 计数器的最大值可以由软件设定,以便确 定PWM的输出脉冲的调制频率。
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29
P.18
2009年教育部-英特尔精品课程
4×4键盘扫描电路设计(3)
内部寄存器
键值寄存器(FF10H)(只读) 状态寄存器(FF12H)(只读)
0 15 ×××××××××××××××
0 15 ×××××××××××××××× LED3 LED2 LED1 LED0
2018/12/29 P.20
/people/yangqs/xtzhsj1/Index.aspx
2009年教育部-英特尔精品课程
4位7段LED显示控制(2)
7段共阳极LED 需要点亮的笔画需 要输出0。 将a~g分别接输出 的7位数据的位0 ~位6
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29
P.14
2009年教育部-英特尔精品课程
脉冲宽度调制PWM(2)
输入输出安排
RESET(I) 初始化 address2~address0(I)端口地址 D15~D0(I)用于写入对比值和最大值 CS(I) 片选端 CLK(I) 时钟信号 IOW(I)写信号 PWM(O)输出端
将8根IO端口线(16位地址线的低8位,高 8位为全1)的高4位用来译码得到最多16个 接口电路的片选信号。 低4位组成每个接口电路的16个字节端口地 址,由于Minisys只有16位数据处理能力。 所以每个接口电路实际上是有8个字端口地 址。
/people/yangqs/xtzhsj1/Index.aspx
/people/yangqs/xtzhsj1/Iቤተ መጻሕፍቲ ባይዱdex.aspx
2018/12/29 P.9
2009年教育部-英特尔精品课程
16位定时/计数器(2)
CNT0方式寄存器(FF20H) CNT1方式寄存器(FF22H) ;两个寄存器均为只可写
1 0 15 ×××××××××××××× 0:非循环 0:定时 1:循环 1:计数
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29
P.15
2009年教育部-英特尔精品课程
脉冲宽度调制PWM(3)
内部寄存器
最大值寄存器(FF30H)(只写) 对比值寄存器(FF32H)(只写) 使能寄存器(FF34H)(只写)
2009年教育部-英特尔精品课程
计算机系统综合课程设计(4)
基于MIPS32的SOC设计实践(下)
(Verilog+Quartus Ⅱ+Cyclone版)
主讲 杨全胜
东南大学计算机科学与工程学院
/people/yangqs/xtzhsj1/Index.aspx
0000H
4KBRAM
0FFFH
256BYTE
/people/yangqs/xtzhsj1/Index.aspx
FF00H
FFFFH
2018/12/29 P.3
2009年教育部-英特尔精品课程
为MiniSys加I/O功能(2)
IO端口地址分配原则(可自行决定)
1 0 15 ×××××××××××××× 1:计数到 1:定时到
0:定时/计数未开始 1:定时/计数开始
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29
P.11
2009年教育部-英特尔精品课程
16位定时/计数器(4)
0:无键 1:有键
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29 P.19
2009年教育部-英特尔精品课程
4位7段LED显示控制(1)
功能 通过向该控制电路写16位数据,经 过译码控制共阳极的7段LED显示。 16位数每半个字节控制一位7段LED, 从高位到地位排列。
CNT0初值寄存器(O)/当前值寄存器(I) (FF24H) CNT1初值寄存器(O)/当前值寄存器(I) (FF26H)
15 ×××××××××××××××× 两个寄存器通过读/写线区别 0
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29
P.4
2009年教育部-英特尔精品课程
对MiniSys的修改
为MiniSys加I/O功能(3)
修改MemWrite和MemRead信号的逻辑。增加 IORead和IOWrite信号,改MemtoReg为 MemorIOtoReg。
assign RegWrite = (R_format || Lw || Jalc || I_data) && !(Jrn) ; // 需要写寄存器的指令 assign MemWrite =((Sw==1 ) && (ImmediatHigh[9:2] != 8’b11111111)) ? 1:0 ; // 写存储器, ImmediatHigh[9:0] 是新增的输入信号=instructions[15..6] assign MemRead = ((Lw==1) && (ImmediatHigh[9:2] != 8’b11111111)) ? 1:0 ; // 读存储器 assign MemorIOtoReg = IORead || MemRead; // 读操作需要从端口或存储器读数据到寄存器 assign IOWrite = ((Sw==1)&& (ImmediatHigh[9:2] == 8’b11111111)) ? 1:0 ; // 写端口 assign IORead = ((Lw==1) && (ImmediatHigh[9:2] == 8’b11111111)) ? 1:0 ; // 读端口, ImmediatHigh[9:0] 就是instructions[15:6]
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29 P.10
2009年教育部-英特尔精品课程
16位定时/计数器(3)
CNT0状态寄存器(FF20H) CNT1状态寄存器(FF22H) ;两个寄存器均为只可读,读取后被清0
2018/12/29 P.1
2009年教育部-英特尔精品课程
第4章 外围电路及控制系统设计
为MiniSys加I/O功能 16位定时/计数器 16位脉冲宽度调制PWM 4×4键盘扫描电路 4位7段LED显示控制 简单UART控制 看门狗控制 中断的设计
2018/12/29 P.2
/people/yangqs/xtzhsj1/Index.aspx
2018/12/29 P.5
2009年教育部-英特尔精品课程
为MiniSys加I/O功能(4)
增加一个MEMorIO模块
译码 单元
wdata
Address
存储 单元
rdata
运算 单元
/people/yangqs/xtzhsj1/Index.aspx