当前位置: 首页>>代码示例>>C#>>正文


C# Mapper.Build方法代码示例

本文整理汇总了C#中Mapper.Build方法的典型用法代码示例。如果您正苦于以下问题:C# Mapper.Build方法的具体用法?C# Mapper.Build怎么用?C# Mapper.Build使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在Mapper的用法示例。


在下文中一共展示了Mapper.Build方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的C#代码示例。

示例1: Build

        public bool Build()
        {
            string netlist = Configuration.NetList;
            string ngdFile = netlist;
            string ncdFile = PathHelper.Combine(OutputLocation.OutputDirectory,
                    string.Format("{0}.ncd", Path.GetFileNameWithoutExtension(netlist)));
            string pcfFile = PathHelper.Combine(OutputLocation.OutputDirectory,
                    string.Format("{0}.pcf", Path.GetFileNameWithoutExtension(netlist)));

            // Translate if required
            if (string.IsNullOrEmpty(netlist) || !File.Exists(netlist))
            {
                throw new FileNotFoundException("NetList File does not exist.");
            }
            else if (string.Compare(Path.GetExtension(netlist), "ngd", true) != 0)
            {
                // Netlist is not NGD, must be compiled to NGD
                NGDBuilder ngdBuilder = new NGDBuilder(Implementor.Toolchain, OutputLocation);
                ngdBuilder.NetList = netlist;
                ngdBuilder.TargetDevice = Configuration.TargetDevice;
                ngdBuilder.ConstraintsFile = Configuration.Constraints;

                // Translate
                Logger.Instance.WriteVerbose("Running NetList Translation");
                if (!ngdBuilder.Build())
                {
                    Logger.Instance.WriteVerbose("Translate Failed");
                    return false;
                }
                Logger.Instance.WriteVerbose("Translate Complete");
                ngdFile = PathHelper.Combine(OutputLocation.OutputDirectory,
                        string.Format("{0}.ngd", Path.GetFileNameWithoutExtension(netlist)));
            }

            // MAP
            Mapper mapper = new Mapper(Implementor.Toolchain, OutputLocation);
            mapper.NGDFile = ngdFile;
            mapper.TargetDevice = Configuration.TargetDevice;
            Logger.Instance.WriteVerbose("Running Mapping");
            if (!mapper.Build())
            {
                Logger.Instance.WriteVerbose("Mapping Failed");
                return false;
            }
            Logger.Instance.WriteVerbose("Mapping Complete");

            // Place and Route
            PlaceAndRouter placerouter = new PlaceAndRouter(Implementor.Toolchain, OutputLocation);
            placerouter.NCDFile = ncdFile;
            placerouter.PCFFile = pcfFile;
            Logger.Instance.WriteVerbose("Running Place and Route");
            if (!placerouter.Build())
            {
                Logger.Instance.WriteVerbose("Place and Route Failed");
                return false;
            }
            Logger.Instance.WriteVerbose("Place and Route Complete");

            return true;
        }
开发者ID:nathanrossi,项目名称:hdl-toolkit,代码行数:60,代码来源:FPGAImplementorInstance.cs


注:本文中的Mapper.Build方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。