👉 立即试用
⬇️ 资源下载:
《Altium Develop 账号、工作区及下载注意事项》
保持始终访问Altium Designer最新发布版本。 Always maintain access to the latest released version of Altium Designer.
为原理图输入、PCB布局、多板装配、线束设计、库管理、仿真、文档等PCB设计流程的各个环节,提供了单一环境。 Provides a single environment for all stages of the PCB design process, including schematic entry, PCB layout, multi-board assembly, harness design, library management, simulation, and documentation.
层次式与多通道设计(Hierarchical & Multi-Channel Design)可帮助工程师将复杂原理图拆分为多个层级模块,并通过通道化方式重复复用相同电路模块,从而提升大型项目的结构清晰度、可维护性和设计效率。 Hierarchical & Multi-Channel Design helps engineers organize complex schematics into structured design blocks and reuse repeated circuit sections as channels, improving clarity, maintainability, and efficiency in large-scale projects.
通过自动应用规则,确保您能够正确完成PCB布局。可以将设计规则添加到网络、导线、总线、线束、元件、图纸或文档参数的原理图上。 By automatically applying rules, you can ensure the correct completion of PCB layout. Design rules can be added to nets, wires, buses, harnesses, components, sheets, or document parameters within the schematic.
Schematic Design Rules(原理图设计规则)用于在原理图设计阶段定义并检查电气连接、命名规范和设计约束,帮助工程师提前发现潜在错误,提升设计一致性与可靠性。 Schematic Design Rules allow engineers to define and validate electrical connections, naming conventions, and design constraints during schematic capture, helping detect potential issues early and improve design consistency and reliability.
电气规则检查(Electrical Rule Checks, ERC)用于在原理图阶段自动检查电气连接问题,例如未连接引脚、网络冲突、重复命名或不合理连接,帮助工程师在进入 PCB 设计前提前发现并修正潜在错误。 Electrical Rule Checks (ERC) automatically validate schematic connectivity issues such as unconnected pins, net conflicts, duplicate names, or invalid connections, helping engineers identify and resolve potential errors before moving into PCB layout.
设计流程自动化(Design Process Automation)通过脚本、模板、规则检查、批量输出和标准化流程,帮助工程师减少重复操作、降低人为错误,并提升从设计到交付的整体效率。 Design Process Automation streamlines repetitive tasks through scripts, templates, rule checks, batch outputs, and standardized workflows, helping engineers reduce manual errors and improve overall efficiency from design to delivery.
设计导入器用于将其他 CAD 或 EDA 工具的设计文件导入 Altium Designer,确保数据兼容并简化迁移流程。 此项功能支持P-CAD®、Autodesk® EAGLE™、Cadence® Allegro®、Cadence® OrCAD®、KiCad®、LTspice®、Mentor Graphics® DxDesigner®、Mentor Graphics® Expedition®、Mentor Graphics® PADS®、Mentor Graphics® xDxDesigner®、Simbeor®、Zuken® CADSTAR®和Zuken® CR-5000®。 The Design Importer allows you to bring design files from other CAD or EDA tools into Altium Designer, ensuring data compatibility and streamlining the migration process.
MultiCAD 能力允许 Altium Designer 与其他 CAD 系统进行互操作,支持导入、转换和兼容不同格式的设计文件。这使得团队在跨平台协作时能够保持数据一致性,避免因软件差异导致的设计障碍。 MultiCAD Capability enables Altium Designer to interoperate with other CAD systems, supporting import, conversion, and compatibility across different design file formats. This ensures consistent data in cross-platform collaboration and eliminates design barriers caused by software differences.
Integrated SPICE Simulation(集成 SPICE 仿真)允许工程师在 Altium Designer 中直接对原理图电路进行模拟与混合信号仿真,提前验证电路行为、分析波形并减少打板前的设计风险。 Integrated SPICE Simulation allows engineers to perform analog and mixed-signal circuit simulation directly from schematics in Altium Designer, helping validate circuit behavior, analyze waveforms, and reduce design risks before PCB fabrication.
LTSpice 导入器(LTSpice Importer)可帮助工程师将 LTSpice 中的原理图设计导入 Altium Designer,便于复用已有仿真电路,并在 Altium Designer 中继续进行原理图编辑、仿真验证和 PCB 设计流程。 The LTSpice Importer enables engineers to import LTSpice schematic designs into Altium Designer, allowing them to reuse existing simulation circuits and continue schematic editing, simulation validation, and PCB design within the Altium environment.
通过可自定义的设计规则系统,在 Altium Designer 中定义并管理电气、布线、制造与装配相关约束,例如间距规则、线宽规则、阻焊层扩展、钻孔/过孔规则、板形约束等。工程师还可以使用高级查询编辑器创建面向特定对象或区域的自定义规则,从而确保设计满足制造要求并降低出错风险。 Rules-Driven Design in Altium Designer allows engineers to define and manage customizable constraints for electrical, routing, manufacturing, and assembly requirements, such as clearance, track width, solder mask expansion, drill/via rules, and board shape constraints. Advanced query-based rule creation enables highly targeted custom rules for specific objects or design regions, helping ensure manufacturability and reduce design errors.
可视化层堆栈管理可帮助工程师直观定义 PCB 的层叠结构、材料属性和不同板区的层堆栈配置,支持刚性板、柔性板、刚柔结合板和嵌入式 PCB 设计。工程师可为不同刚性/柔性区域设置独立层结构、弯折参数,并结合材料库定义每层的厚度、介电常数和铜厚等参数。 Visual Layer Stack Management helps engineers visually define PCB stackups, material properties, and region-specific layer stack configurations for rigid, flex, rigid-flex, and embedded PCB designs. Designers can assign separate stack structures, bend parameters, and material properties such as thickness, dielectric constant, and copper weight for each layer.
约束管理器通过基于表格的统一界面,帮助工程师在原理图和 PCB 设计中集中管理电气与物理设计约束,并支持在不同项目间复用标准化约束集,从而提升规则配置效率和设计一致性。 Constraint Manager provides a unified, spreadsheet-style interface for managing electrical and physical design constraints across schematic and PCB workflows, enabling reusable constraint sets to improve setup efficiency and design consistency.
材料库用于集中管理 PCB 层堆栈中的材料参数,包括介质、铜箔、阻焊层和覆盖膜等。工程师可使用内置材料或创建自定义材料,并通过 XML 导入/导出实现团队共享,确保层堆栈、阻抗计算和制造沟通的一致性。 Materials Library centralizes material parameters for PCB layer stackups, including dielectrics, copper foils, solder mask, and coverlays. It supports built-in and custom materials, with XML import/export for team sharing and consistent stackup, impedance, and manufacturing data.
采用高密度互连技术设计的印刷电路板,由于能在更小的区域内容纳更多的元件,因此尺寸也更小。高密度互连印刷电路板利用盲孔、埋孔、微孔以及极细的导线,从而在更小的面积上实现更多元件的集成。 PCBs designed using high-density interconnect (HDI) techniques tend to be smaller as more components are packed in a smaller space. An HDI PCB uses blind, buried, and micro vias, vias in pads, and very thin traces to pack more components into a smaller area.
3D-MID 是 Three-Dimensional Mechatronic Integrated Devices(二维/三维机电一体化集成器件)的缩写。 3D-MID stands for Three-Dimensional Mechatronic Integrated Devices. 3D-MID 的制造工艺使用激光将电路图形直接蚀刻在 3D 基材表面,随后通过标准金属化处理,将该图形构建为导电通路。 这一过程称为 Laser Direct Structuring (LDS),可将电路集成到最终产品的结构之中。 The 3D-MID manufacturing process uses a laser to etch the circuit pattern directly onto the surface of a 3D substrate, which then undergoes a standard metalization treatment to build up that pattern into conductive pathways. This process, known as Laser Direct Structuring (LDS), enables the circuit to be integrated into the structure of the final product 在 3D 结构表面设计电路走线会带来独特挑战。编辑空间必须支持元件放置以及定义该独特电路的元件间连接。该编辑器还必须能够导入将要创建电子电路的 3D 基材——它必须是真正的三维电子设计编辑器。 Designing circuit pathways over the surface of a 3D structure brings unique challenges. The editing space must support the placement of components and the connections between them that define the unique circuit. This editor must also be able to import the 3D substrate on which the electronic circuit will be created - it must be a true, three-dimensional electronic design editor.
Altium Designer 的铺铜管理功能可帮助工程师在 PCB 中高效创建、编辑和维护铜皮区域,用于电源、地平面、屏蔽、散热和电流承载等设计需求。通过灵活的多边形铺铜设置、网络分配、间距规则、优先级管理和重新铺铜控制,工程师可以确保铜皮与设计规则保持一致,并提升电气性能、散热能力和可制造性。 Copper Pour Management in Altium Designer enables engineers to efficiently create, edit, and maintain copper regions on a PCB for power distribution, ground planes, shielding, thermal management, and current-carrying requirements. With flexible polygon pour settings, net assignment, clearance rules, priority control, and repour management, designers can ensure copper pours comply with design rules while improving electrical performance, thermal behavior, and manufacturability.
Altium Designer 的精确对象放置功能可帮助工程师通过坐标输入、网格吸附、对齐工具、对象属性面板和约束规则,准确控制元器件、走线、过孔、文本、机械元素等 PCB 对象的位置与尺寸。该功能有助于满足结构装配、制造公差、高密度布局和设计规范要求,提升布局一致性与设计精度。 Precise Object Placement in Altium Designer enables engineers to accurately control the position and dimensions of PCB objects such as components, tracks, vias, text, and mechanical elements using coordinate entry, grid snapping, alignment tools, object properties, and design constraints. This helps meet mechanical assembly, manufacturing tolerance, high-density layout, and design specification requirements while improving placement consistency and design accuracy.
ltium Designer 支持刚柔结合板设计,帮助工程师在同一 PCB 项目中定义刚性区域、柔性区域、弯折区域和对应的层堆栈结构。通过 3D 弯折预览、区域化层堆栈管理、材料参数定义和制造输出支持,工程师可以更直观地验证柔性连接、结构装配和弯折空间,提升可制造性和产品可靠性。 Altium Designer supports rigid-flex PCB design, enabling engineers to define rigid regions, flexible regions, bend areas, and corresponding layer stack structures within a single PCB project. With 3D bend visualization, region-specific stackup management, material parameter definition, and manufacturing output support, designers can more effectively validate flex connections, mechanical assembly, and bend clearances while improving manufacturability and product reliability.
Altium Designer 的阻抗配置功能可在层堆栈管理器中基于板层结构、材料参数、介质厚度和铜厚等信息定义单端和差分阻抗目标。工程师可将阻抗配置应用到设计规则中,以指导受控阻抗走线,确保高速信号满足传输线设计要求并提升信号完整性。 Impedance Profiles in Altium Designer allow engineers to define single-ended and differential impedance targets within the Layer Stack Manager based on stackup structure, material properties, dielectric thickness, and copper thickness. These profiles can be applied to design rules to guide controlled-impedance routing, helping high-speed signals meet transmission line requirements and improving signal integrity.
PCB panel 的 Hole Size Editor mode 也可用于检查启用了沉孔特性的焊盘。当 PCB 设计中存在在单侧或双侧启用了沉孔(counterbore/countersink)特性的焊盘对象时,相关的 Counterholes Top 和/或 Counterholes Bottom 分组会显示在 Layer Pairs 列表中。Counterhole Depth 和 Counterhole Angle 列可在面板的 Unique Holes 区域中显示。注意:沉孔设置无法在该面板中编辑。 The Hole Size Editor mode of the PCB panel can also be used to examine pads with counterhole features enabled. When the PCB design has pad objects with counterhole (counterbore/countersink) features enabled for one or both sides, the associated Counterholes Top and/or Counterholes Bottom groups are displayed in the Layer Pairs list. The Counterhole Depth and Counterhole Angle columns can be displayed in the Unique Holes region of the panel. Note that counterhole settings cannot be edited in the panel.
PCB 布局复制工具使您能够在平面 PCB 设计中复制重复的电路模块布局。作为一种非正式的复用功能,该工具非常适合在需要快速将一组已放置的元件布局复制到另一组具有相同连接但尚未放置的元件时使用。 The PCB Layout Replication tool gives you the ability to replicate the layout for repetitive blocks of circuitry in a flat PCB design. As an informal reuse feature, this tool is a perfect fit when you need to quickly replicate placement of a group of components to another group of the same, not-yet-placed components with the same connections.
Altium Designer 允许您自定义焊盘的形状,定义焊盘在阻焊层和锡膏层上的所需形状,并且还可以自定义焊盘的热焊盘连接方式。 Altium Designer allows you to customize the shape of your pads, define the required shape of the pads on solder and paste mask layers, and also customize pad thermal reliefs.
Altium Designer 提供原生 3D PCB 设计能力,使工程师能够在 PCB 编辑器中直接查看、检查和编辑电路板的三维模型,包括元器件高度、外壳干涉、安装孔位和结构空间。通过真实 3D 可视化与机械模型协同,工程师可以在设计早期发现装配问题,提升机电协同效率和产品可靠性。 Native 3D PCB Design in Altium Designer enables engineers to view, inspect, and edit the PCB’s three-dimensional model directly within the PCB editor, including component height, enclosure clearance, mounting hole alignment, and mechanical space constraints. With true 3D visualization and mechanical model collaboration, designers can identify assembly issues early, improving ECAD-MCAD collaboration and product reliability.
Altium Designer 的截面图功能可帮助工程师在 3D PCB 环境中通过剖切方式查看电路板内部结构,例如层堆栈、过孔、嵌入式对象、器件高度和装配关系。该功能有助于检查复杂结构、刚柔结合板、沉孔/埋头孔和机械干涉问题,提升设计验证与制造沟通效率。 Sectional View in Altium Designer enables engineers to inspect the internal structure of a PCB in the 3D environment by cutting through the board, including layer stackups, vias, embedded objects, component heights, and assembly relationships. This helps validate complex structures, rigid-flex designs, counterholes, and mechanical clearance issues, improving design verification and manufacturing communication.
Altium Designer 的拼版支持功能可帮助工程师将单个 PCB 设计组合成适合制造的生产拼板,支持阵列复制、板间间距、工艺边、V-Cut、邮票孔和定位孔等制造需求。通过在设计环境中提前规划拼版结构,工程师可以提升生产效率、降低制造成本,并确保设计满足 PCB 厂和装配工艺要求。 Panelization Support in Altium Designer enables engineers to combine individual PCB designs into manufacturing-ready production panels, supporting array replication, board spacing, tooling rails, V-cuts, mouse bites, fiducials, and mounting holes. By planning panel structures within the design environment, designers can improve production efficiency, reduce manufacturing costs, and ensure compliance with PCB fabrication and assembly requirements.
Altium Designer 支持 IPC-4761 过孔保护类型定义,帮助工程师在 PCB 设计中规范设置过孔盖油、塞孔、填孔、树脂塞孔和金属化覆盖等工艺要求。通过在设计阶段明确过孔保护方式,可提升 PCB 的可靠性、可制造性,并减少装配、焊接和环境应力带来的潜在风险。 Altium Designer supports IPC-4761 via protection types, enabling engineers to define manufacturing requirements such as tented vias, plugged vias, filled vias, resin-filled vias, and capped vias directly within the PCB design. By specifying via protection methods during the design stage, designers can improve PCB reliability and manufacturability while reducing risks related to assembly, soldering, and environmental stress.
使用项目变量在同一电路板上创建具有不同功能的设计。 变量管理器重点关注 PCB 的整体功能,而不是单个部件。 通过在变量管理器中定义一组元件,您可以推出具有不同特性和功能的全系列设备,满足广泛用户的需求。 Use project variants to create designs with different functionality on the same PCB. Variant Manager focuses on the overall functionality of the PCB rather than individual parts. By defining sets of components in Variant Manager, you can deliver a full product family with different features and functions to meet a wide range of user needs.
通过绕行布线、推挤布线、推抱障碍布线、忽略障碍布线、推挤障碍布线等功能强大的布线选项,以交互方式进行电路板布线。 Interactively route the PCB using powerful routing modes such as walkaround routing, push routing, hug-and-push obstacle routing, ignore obstacle routing, and push obstacle routing.
针对所有需要沿同一路径布线的信号组,同时为多个网络进行布线,例如,Address和Data总线。 Route multiple nets simultaneously for signal groups that need to follow the same path, such as address and data buses.
无需通过交互式长度调整功能手动调整单个网络,即可将布线路径长度自动对齐。 Automatically align routed path lengths without manually tuning individual nets using interactive length tuning.
通过同时自动调整多个网络来满足特定设计规则,包括长度和延迟,以提高PCB设计准确度和效率。适用于差分对和任意角度走线。 Improve PCB design accuracy and efficiency by automatically tuning multiple nets at the same time to meet specific design rules, including length and delay requirements. Applicable to differential pairs and any-angle routing.
通过规则系统定义阻抗、长度、延迟、差分对间距等高速约束,确保设计满足信号完整性要求。 Defines high-speed constraints such as impedance, length, delay, and differential pair spacing to ensure signal integrity compliance.
在高速设计项目中提供一致的阻抗。Layer Stack Manager能够根据层、结构和指定目标阻抗,自动选定线路的几何参数,并生成可供设计规则使用的阻抗配置。 Provide consistent impedance in high-speed design projects. The Layer Stack Manager can automatically determine trace geometry based on layers, structures, and target impedance, then generate impedance profiles that can be used by design rules.
Altium Designer中的高性能布线工具支持HDI设计,包括自动扇出放置、焊盘过孔和去除未使用的过孔形状。 The high-performance routing tools in Altium Designer support HDI design, including automatic fanout placement, via-in-pad, and removal of unused via shapes.
在布线过程中实时显示导线、元器件和障碍物之间的间距边界,帮助工程师快速判断可布线空间。 Displays clearance boundaries in real time during routing, helping designers determine whether traces can fit through dense areas.
提供了功能强大的工具来提高现有布线质量。每当您通过移动光标对新布线路径进行定义时,所有建议布线均将自动进行修线。进行修线时,将尝试缩短路径长度,完善转角形状并减少转角数量。还可以通过回溯,对按照当前设计规则设置完成的布线进行检查和更新。 Powerful tools are provided to improve the quality of existing routing. As you move the cursor to define a new routing path, suggested routing is automatically glossed to shorten path length, improve corner shapes, and reduce the number of corners. Existing routing can also be checked and updated through retracing according to current design rules.
自动为 BGA 器件生成扇出走线和过孔结构,提升高引脚密度器件的逃逸布线效率。 Automatically generates fanout routing and via structures for BGA devices, improving escape routing efficiency for high-pin-count packages.
该功能提供了传统引脚互换系统的全部优势,同时利用了 Altium Designer 对设计中网络分配的深度理解。在执行引脚互换操作时,Altium Designer 会分析分配给所选引脚的网络,并动态地重新分配该引脚及其连接铜皮上的网络。这种级别的功能意味着:已部分布线的网络,以及复杂 BGA 器件中预先布好的多层扇出走线,都可以进行互换。差分对也可以互换,并可利用对 FPGA 上差分引脚对的认知。 This feature provides all the benefits of traditional pin-swapping systems, but takes advantage of Altium Designer's intimate understanding of the net assignments in the design. During a pin swap operation, Altium Designer analyzes the net assigned to the chosen pin, and dynamically reassigns the net on the pin and any connected copper.This level of functionality means that partially routed nets and pre-routed multilayer escapes from complex BGA devices can be swapped. Differential pairs can also be swapped, taking advantage of the knowledge about differential pin-pairs on FPGAs.
Multi-board Schematic(*.MbsDoc)是多板原理图文件,其中的图形块(模块)代表子 PCB 项目,这些模块被放置并相互连接,以创建逻辑系统设计。 Multi-board Schematic (*.MbsDoc) is a multi-board schematic file where graphical blocks (modules) represent child PCB projects. These modules are placed and connected to each other to create the logical system design.
Multi-board Assembly(*.MbaDoc)是多板组装文档,它是多板原理图文档中逻辑系统设计的物理对应物。该文档由多板项目导入的 PCB 数据填充,原理图模块所引用的 PCB 会加载到多板组装文档中,在这里你可以对每块电路板进行定位(必要时还可加入外壳)。将多个 PCB 模块组合到统一的三维装配环境中,用于检查板间位置、结构干涉和系统装配关系。 Multi-board Assembly (*.MbaDoc) is the physical counterpart to the logical system design in the multi-board schematic document. It is populated with imported PCB data from the multi-board project. PCBs referenced by modules in the multi-board schematic are loaded into the multi-board assembly document, where each board can be positioned (along with an enclosure if needed).Combines multiple PCB modules into a unified 3D assembly environment to check board positions, mechanical conflicts, and system assembly.
允许每块电路板单独进行旋转和与其它电路板对齐。多板装配过程中可导入额外的元器件,电路板,装配体或STEP模型并进行定位。目前适用于SOLIDWORKS®。 Allows each circuit board to be individually rotated and aligned with other boards. Additional components, boards, assemblies, or STEP models can be imported and positioned during multi-board assembly. Currently available for SOLIDWORKS®.
线束设计功能允许你创建完整的线束设计,从单个引脚到引脚的连接到制造文档。线束设计可以作为独立项目创建,也可以作为多板项目的一部分。在后一种情况下,多板项目中 PCB 之间的逻辑连接定义了线束中的互连关系。 The harness design functionality allows you to create a full wiring harness design, from individual pin-to-pin connections to manufacturing documentation. A harness design can be created as a standalone project or as part of a multi-board project. In the latter case, the logical connections between PCBs in the multi-board project define the connectivity within the harness.
通过简化项目发布器,将经验证项目快照添加到Altium 365 Workspace或预期文件夹结构中。您可以针对设计变量动态创建自定义项目输出,以将制造和装配输出与最新设计源文件连接起来。 Use the simplified Project Releaser to add validated project snapshots to an Altium 365 Workspace or a specified folder structure. You can dynamically create custom project outputs for design variants, linking manufacturing and assembly outputs to the latest design source files.
可视化制造输出功能允许设计者在生成制造文件之前,以直观的方式查看和验证 PCB 的生产数据。它支持对 Gerber、钻孔文件、装配步骤等进行可视化检查,确保设计与制造要求一致。 Visual Manufacturing Outputs enable designers to visually review and validate PCB production data before generating manufacturing files. It supports visualization of Gerber files, drill data, and assembly steps, ensuring alignment between design and manufacturing requirements.
使用 Draftsman 创建与源 PCB 设计关联的制造图和装配图,并可随设计变更一键更新。 Uses Draftsman to create fabrication and assembly drawings linked to the source PCB design, with one-click updates after design changes.
一旦多板组装完成,就可以创建并注释制造图。多板设计的制造图是在 Draftsman 编辑器中创建的。要向多板设计中添加新的多板组装文档,请在“Projects”面板中右键单击项目条目,然后从上下文菜单中选择 Add New to Project » Draftsman Document 命令。 Once the multi-board assembly is complete, a manufacturing drawing can be created and annotated. A manufacturing drawing for a multi-board design is being created in the Draftsman editor.To add a new multi-board assembly document to your multi-board design, right-click the project's entry in the Projects panel and select Add New to Project » Draftsman Document command from the context menu.
跨设计进行自定义的图纸创建模板。此项功能将确保您能够在兴趣点与设计对象之间添加PCB尺寸、测量、说明和图注,以自定义文档工作流。 Create custom drawing templates across designs. This feature allows you to add PCB dimensions, measurements, notes, and callouts between points of interest and design objects to customize your documentation workflow.
在任何带有浏览器的设备上,您都可以在将 Gerber 发送到制造之前对其进行比较、访问电路板的层堆栈、进行测量、交叉探测元件/网络、逐步完成电路板组装过程等。 On any device with a browser, you can compare Gerbers before sending them to manufacturing, access the board layer stack, take measurements, cross-probe components and nets, step through the board assembly process, and more.
在设计过程中,快速找到可用零部件及其成本。您还可以根据预算、可用性和设计要求,选择备用零部件。 Quickly find available parts and their costs during the design process. You can also select alternative parts based on budget, availability, and design requirements.
ActiveBOM能够自动提供部件信息,例如,选定供应商提供的可用性和价格。 Altium Designer将确保您能够在BOM中直接指定与引脚兼容的备用部件选项,以免因供应链问题而引起制造风险。 ActiveBOM can automatically provide part information, such as availability and pricing from selected suppliers. Altium Designer allows you to specify pin-compatible alternative part options directly in the BOM to reduce manufacturing risks caused by supply chain issues.
您可以根据自己的库标准,以及IPC-7351、SM-782和JEDEC(通孔)规定的制造和装配质量和布局,快速准确地构建所需的任何部件。您甚至可以从Excel表或CSV文件中批量生成整个系列的封装。 You can quickly and accurately build any required component according to your own library standards as well as the manufacturing, assembly quality, and layout requirements defined by IPC-7351, SM-782, and JEDEC for through-hole components. You can even batch-generate entire footprint families from Excel or CSV files.